Font library (Rasterworks)
-
Пример не запускается
- Attachments
-
-
Безымянный.png (4.33 KiB)Viewed 9922 times
-
to infinity and beyond
Пример давно устарел, я заменил функцию CountUTF8Z.
Вот, если надо.
Вот, если надо.
- Attachments
-
-
test.asm (1.31 KiB)Downloaded 367 times
-
Прошу добавить Rasterworks в образ.
Сделано.
Такой вопрос, что из себя представляет буфер для drawText?
to infinity and beyond
Такой же как и для сисфункции 4. А из описания не понятно?
xSize dd ?
ySize dd ?
picture rb xSize * ySize * bpp
xSize dd ?
ySize dd ?
picture rb xSize * ySize * bpp
После сна стало все сразу ясно Теперь осталось выяснить почему у меня выводится лишь черный прямоугольник. Вроде все правильно написал, длину строки считает, rasterworks_drawText тоже возвращает заданную ширину символов, но вместо текста только черная область
P.S. Пример работает, это я на Си повторить не могу пока
P.S. Пример работает, это я на Си повторить не могу пока
to infinity and beyond
Пытаюсь выяснить в чем у меня проблема с библиотекой. Можно пояснить эти строки из примера:
?
Code: Select all
mov eax,-1
mov edi,buf+8
mov ecx,24000h
rep stosd
to infinity and beyond
Библиотека рисует только текст на любом входящем изображении. Если тебе нужен белый фон, то сначала нужно его нарисовать — 0xFFFFFF или -1.
Это не одно и то же строго говоря. Если учитываться будет альфа канал, то -1 это прозрачный цвет.Pathoswithin wrote:0xFFFFFF или -1.
Как импортировать эту библиотеку в C--?
Boxlib я импортировал вот так:
#include "../lib/obj/box_lib.h"
И
load_dll(boxlib, #box_lib_init, 0);
И все работало, думаю, заменю имена либ, и получится сделать так же для растерворкса
Но, потом я заметил, что во всех либах, кроме растерворкса, есть какая либо функция init
И именно она помещается в функцию load_dll
Вот не знаю
Boxlib я импортировал вот так:
#include "../lib/obj/box_lib.h"
И
load_dll(boxlib, #box_lib_init, 0);
И все работало, думаю, заменю имена либ, и получится сделать так же для растерворкса
Но, потом я заметил, что во всех либах, кроме растерворкса, есть какая либо функция init
И именно она помещается в функцию load_dll
Вот не знаю
Last edited by maxcodehack on Sun Sep 27, 2020 9:53 am, edited 1 time in total.
Это потому что кто-то написал файл "../lib/obj/box_lib.h", в котором есть таблица импорта функций этой библиотеки.
Вот таблица экспортируемых функций этой библиотеки.
А вот таблица импортируемых функций (т.е. тех функций, которые нам нужны из экспортируемых библиотекой).
Соответственно тебе нужно написать некий rasterworks.h, который будет содержать таблицу импорта библиотеки rasterworks.
И в load_dll вторым параметром ты будешь передавать указатель на начало таблицы импорта (т.е. на первую функцию в таблице импорта).
Кстати таблица экспорта данной библиотеки содержит всего 4 функции в настоящее время.
Вот таблица экспортируемых функций этой библиотеки.
А вот таблица импортируемых функций (т.е. тех функций, которые нам нужны из экспортируемых библиотекой).
Соответственно тебе нужно написать некий rasterworks.h, который будет содержать таблицу импорта библиотеки rasterworks.
И в load_dll вторым параметром ты будешь передавать указатель на начало таблицы импорта (т.е. на первую функцию в таблице импорта).
Кстати таблица экспорта данной библиотеки содержит всего 4 функции в настоящее время.
ну есть libraterworks.h
то есть надо передать первую функцию, то есть drawText?
Del
Last edited by maxcodehack on Sun Sep 27, 2020 9:54 am, edited 2 times in total.
Who is online
Users browsing this forum: No registered users and 1 guest