2 / 2 / 0
Регистрация: 11.10.2010
Сообщений: 35
|
|
1 | |
Вставка изображения в RTF-файл12.01.2012, 14:24. Показов 11466. Ответов 9
Метки нет Все метки)
(
Нужно вставить BMP-шное изображение в конец или начало файла RTF.
Конкретного метода не нагуглил как это сделать, узнал только, что сам RTF понимает лишь EMF изображения. Конвертировать BMP в EMF не проблема, если это действительно так. Подскажите пожалуйста, как вставить изображение в RTF файл? Может быть есть в C++ Builder стандартные функции в RichEdit или нечто подобное? Мне не удалось найти, либо поправьте, плохо гуглил. Очень жду ответа, спасибо большое! Добавлено через 13 часов 27 минут UP! ну неужели никто не подскажет?..
0
|
|
12.01.2012, 14:24 | |
Ответы с готовыми решениями:
9
Вставка закладки в шаблон формата RTF с последующей отгрузкой данного шаблона в richTextBox Создание rtf файла и запись в него текста и изображения |
2 / 2 / 0
Регистрация: 11.10.2010
Сообщений: 35
|
|
12.01.2012, 21:29 [ТС] | 3 |
Да, картинка добавляется, но когда сохраняю с РичБокса - документ пустой.
Моя задача на вход подать файл BMP, а на выходе получить RTF внутри с этой картинкой, вставленной в конец файла. Или можно просто в новосозданный файл RTF
0
|
2 / 2 / 0
Регистрация: 11.10.2010
Сообщений: 35
|
||||||
12.01.2012, 22:04 [ТС] | 5 | |||||
Тоже не вариант, погуглил,
Если бы просто узнать алгоритм и как вообще хранятся файлы в rtf, я ничего не нагуглил подобного ![]() Я бы просто втупую вставил бы по битикам картинку прямо в файл или в каком месте она там хранится. Но из RTF я лишь текст умею форматировать, а о картинках ничего нет. Может еще варианты? кто что подскажет? Выкопировки кода? буду очень благодарен ЗЫ если же попытаюсь статически влинковать библиотеку Word'a, я могу только представить до каких размеров возрастет моя софтинка
0
|
2 / 2 / 0
Регистрация: 11.10.2010
Сообщений: 35
|
|
19.01.2012, 02:30 [ТС] | 7 |
Гениально!!
Все прекрасно работает! Спасибо большое!
0
|
UeArtemis
18 / 18 / 3
Регистрация: 23.09.2011
Сообщений: 205
|
||||||||||||||||
17.06.2016, 14:57 | 8 | |||||||||||||||
У меня почему-то остаётся метафайл пустой. Сохранял отдельно - 0 байт.
Добавлено через 4 часа 33 минуты С метафайлом помогли разобраться. Удалять метаканву нужно перед загрузкой в поток. А вот, что эта часть кода у Вас значит?
Ну, и следующая строчка кажется абсурдной. Зачем брать подстроку в 2 символа с конца, если, по идее, их всего 2? И потом посимвольно последовательно присваивать первый символ к первому, второй к второму. Не понимаю. Не будет ли равноценным этот более простой код? Или я что-то упустил?
Комбинация тегов {\pict\dibitmap0\wbmwidthbytes52\picw103\pich36\picwgoal1545\pichgoal540 из файла BMP2 отображается у меня во всех редакторах корректно. Остальные - где-то есть картинка, а где-то нет. Добавлено через 2 минуты Но {\pict\wmetafile8\picwgoal810\pichgoal1200, думаю, надёжнее. Добавлено через 1 час 26 минут Только BYTE tBt, естественно. Добавлено через 1 час 49 минут Я так понимаю, дело в кодировке. Метафайл, который отображается и в WordPad'е и в MS Word'e, при той же картине внутри имеет другой код. Заметил, что генерируемый мною текст кода начинается с 010000006C..., а тот, что сохраняется текстовыми процессорами - 010009... Кто знает, где про структуру метафайлов почитать можно? Добавлено через 42 минуты Так, от тестовых редакторов шапка перед моим кодом: 010009000003c607000008003c05000000003c05000026060f006e0a574d464301000000000001 00952300000000010000004c0a0000000000004c0a0000 Ещё хвост отличается, но я там не нащупал стык пока. Добавлено через 2 часа 0 минут
Видит картинку в Word'е, а вот в WordPad нет, как и в RichEdit с поддержкой OLE. Проблема в структуре метафайла, т.к. другие метафайлы видят все. Надеюсь, у кого-нибудь будут соображения по этой теме.
0
|
UeArtemis
18 / 18 / 3
Регистрация: 23.09.2011
Сообщений: 205
|
|
21.06.2016, 13:20 | 9 |
Хвост тоже нащупал!
0400000003010800050000000b0200000000050000000c02570157010500000014020000000007 000000fc020000ffffff000000040000002d010000050000000102ffffff000400000002010200 040000002d0100000c00000040092100f0000000000000005a015a0100000000040000002d0100 0008000000fa0200000100000080808000040000002d0101000400000004010d00070000001804 4b014b010f000f0008000000fa0200000000000000000000040000002d01020008000000fa0200 0001000000c0c0c000040000002d0103000400000004010d000700000018041701170143004300 070000001804e200e200780078000500000014025e003601050000001302fc0024000500000014 022400fc0005000000130236015e000500000014020f00ad000500000013024b01ad0005000000 140224005e000500000013023601fc000500000014025e002400050000001302fc003601040000 002d01020004000000f0010300050000001402ad000f00040000002d0101000400000004010d00 050000001302ad004b010500000014020f00ad000500000013024b01ad001c000000fb02f5ff00 0000000000900100000001000000005461686f6d6100003f4700003f3f00006937213f3f123f3f 3f123f3f3f613f12040000002d010300050000000902808080000a000000320aa8004e01020000 0030b006000500050000001402a80059010c000000320a0100a800030000003930b00006000600 05000500000014020100b9000d000000320a4b01a300040000002d3930b0040006000600050005 00000014024b01b8000d000000320aa800010004000000313830b0060006000600050005000000 1402a8001800040000002d01020007000000fc020100000000000000040000002d0104001c0000 00fb021000070000000000bc02000000cc0102022253797374656d000000000000000000000000 0000000000000000000000000000040000002d010500050000001402ad00ad0008000000fa0200 000200000080000000040000002d0106000400000004010d0007000000fc020000800000000000 040000002d01070005000000010280000000040000000201020005000000130236005500040000 002d01020004000000f001060008000000fa0200000100000080000000040000002d0106000400 000004010d000a000000240303005e003b005700400055003600040000002d01040004000000f0 010700040000002d01030005000000090280000000040000002d010400050000000102000000ff 040000000201010009000000320a270055000100000055bb070005000000140227005c00040000 002d01020004000000f0010600040000002d010400040000002d010500050000001402ad00ad00 08000000fa0200000200000000008000040000002d0106000400000004010d0007000000fc0200 00000080000000040000002d010700050000000102000080000400000002010200050000001302 b4005800040000002d01020004000000f001060008000000fa0200000100000000008000040000 002d0106000400000004010d000a000000240303006100af006200b7005800b400040000002d01 040004000000f0010700040000002d01030005000000090200008000040000002d010400050000 000102000000ff040000000201010009000000320ab40058000100000049bb0400050000001402 b4005c00040000002d010200040000002d010400040000002d010500030000000000 Вот что это за "оболочка" для моего файла? Универсальная ли она? Добавлено через 3 часа 39 минут
0
|
UeArtemis
18 / 18 / 3
Регистрация: 23.09.2011
Сообщений: 205
|
|
12.06.2017, 10:54 | 10 |
Это может быть EMF+? Как конвертировать EMF в EMF+?
0
|
12.06.2017, 10:54 | |
Помогаю со студенческими работами здесь
10
Что-то типа OLE- объекта для вставки с помощью АСПа например файл *.rtf или *.doc в ASP-файл Загрузить RTF файл Как записывать в rtf файл Как экспортировать в rtf файл Вставка изображения Вставка изображения Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |