Pull to refresh
10
0
Send message

В общем у меня получилось (для Linux Mint 18).
Установить драйвера.
Затем нужно ВЫКЛЮЧИТЬ принтер.
Потом удалить все уже установленные принтеры(из гуи)
потом, учитывая что принтер висит на 0 usb порту:


sudo /etc/init.d/cups restart
sudo lpadmin -p LBP2900 -m CNCUPSLBP2900CAPTK.ppd -v ccp://localhost:59687 -E
sudo ccpdadmin -p LBP2900 -o /dev/usb/lp0
sudo update-rc.d ccpd defaults

Включить принтер.
Перегрузить.
У меня в результате получилось два принтера LBP2900, и LBP2900-2(который автоматически создает система, и если его удалить или отключить тоже не работает).


В общем мрак.

Вам удалось в конечном итоге запустить ваш LBP2900?

Win2d тормоз жуткий. Максимум что вы с него сможете выжать это 10`000 линий/прямоугольников/вообще объектов.
Вывод текста (метод drawText) — это вообще пиши пропало.
Единственное но — у него есть возможность рисовать spriteBatch (вывод картинки) — только в этом случае производительность будет реально упираться в GPU (для примера у меня более миллиона 1000х1000 картинок может вывести).


Для примера qt — 200`000 линий рисует при 60 фпс.
При первой же возможности переходите на SkiaSharp (если нужен C#).


P.S. Более того skia с ganesh surface'ом (opengl/directx аппаратное ускорение) умеет использовать NV_path_rendering. Практически в 100 раз быстрее остальных способов (на сайте нвидии демки есть, можете попробовать).

Он такую кашу в Intelisence выдает что с тем же успехом можно блокнотом пользоваться.

Так таки IDE круче?

Я имел ввиду Visual Studio .sln файл

Стало быть IDE — излишества.

А зачем тогда вообще 10 разных операционных систем если есть уже одна?

Как по мне то из этих десяти для десктопа только одна и рабочяя только.


А зачем тогда вообще 10 разных IDE если есть уже одна?

По моему — она тут фактически тоже одна (для каждой конкретно взятой платформы).
XCode для маков
VS для виндовсов
Android Studio для андроидов


блокнот — для PHP.


вам бы пришло в голову писать «а зачем тогда нужен IDEA, если есть Eclipse.

Не пришло бы — для меня есть только IDEA.


Посему выбор определяется личными предпочтениями.

Мне кажется реально предпочтений особо не каких быть не может. Ровно как и в выборе языка.
Если скажем Android нативно работает только с Java, по другому родной интерфейс вы не получите.
Аналогично с Windows C# C++/CLI.


Как вы будете работать с UWP проектом в IDEA/Eclipse я не представляю.

Ну так и нафига оно надо тогда? Если все уже и так есть в IDE.

А vim и проект студии откроет, и скомпилирует и продебажет?

Не убедили.
Абсолютно все приведённые примеры умеют делать современные IDE. Плюс в них есть ещё и InteliSence с контекстной кодогенирацией.


Если мне нужно печатать текст — мне его нужно печатать, а не думать о том "как его печатать".

Не пойму я нафига это всё? Для каждой архитектуры писать свой ассемблерный код? А как потом заинлайненую ассемблерную функцию компилятор будет оптимизировать? Даже если и нужно по каким-то причинам писать ассемблерный код — есть же inline assembler.
Бред.

Вот кстати аналогичный вариант с offsetof http://xinutec.org/~pippijn/home/programming/cpp/properties


Ругается потому что у вас есть private. http://en.cppreference.com/w/cpp/types/is_standard_layout


К сожалению почти каждый класс в реальном проекте "non-standard-layout".

Просто интересно как у вас проект собирается что вы с такой легкостью компиляторы меняете.

Зачем вам во всех компиляторах? Вы же на каком то конкретном работаете, а не на всех сразу.

В gcc 6.1 концепты уже есть из TS спецификации.
Нужно добавить следующие флаги для компиляции:


-fconcepts -std=c++1z

Пример http://coliru.stacked-crooked.com/a/a59567cac9c7681d
Документация http://en.cppreference.com/w/cpp/language/constraints

А у вас SkiaSharp в UWP сейчас работает?

В примере все условия внутри лямбд.


fs.readdir(__dirname, function(error1, files) {
    if (error1) {
        console.error(error1);
        return;
    }

    var fs_stat = function(error2, stats) {
        if (error2) {
            console.error(error2);
            return;
        }
        if (!stats.isFile()) {
            return;
        }
        fs.readFile(file, function(error3, buffer) {
            if (error3) {
                console.error(error3);
                return;
            }
            buffers.push(buffer);
        });
    };

    for (var i = 0, j = files.length; i < j; i++) {
        var file = path.join(__dirname, files[i]);
        fs.stat(file, fs_stat);
    }
});

По-моему вполне читаемо, и не размашисто.

Последняя версия кода с отдельными функциями сморится приятно, но как по мне изначальная версия гораздо понятнее.
А почему нельзя, например


    if (error) {
        console.error(error);
    } else {
        for (var i = 0, j = files.length; i < j; i++) {
            console.log(files[i]);
        }
    }

Заменить на


    if (error) {
        console.error(error);
        return;
    }
    for (var i = 0, j = files.length; i < j; i++) {
         console.log(files[i]);
    }

?

Возможно. Единственное но, std::type_index занимает 8 байт. Если набор хранимых типов заранее известен, то можно тип хранить в unsigned char. Разница становится ощутимой если хранить что то вроде std::optional (даже в обычном std::vector). Если же хранить как any — наверное подойдет как есть.

Information

Rating
Does not participate
Registered
Activity