|
|
|
Кто-нибудь делал паскалевскую обертку над muPDF (libmuPDF.dll)?
|
|||
|---|---|---|---|
|
#18+
Я о той, что в составе Суматры прилагается. Что-то не рассчитал свои силы. Уже второй день пилю, а края даже не видно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2015, 09:19 |
|
||
|
Кто-нибудь делал паскалевскую обертку над muPDF (libmuPDF.dll)?
|
|||
|---|---|---|---|
|
#18+
чччД, Когда-то давно здесь, что-то пробегало ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2015, 09:39 |
|
||
|
Кто-нибудь делал паскалевскую обертку над muPDF (libmuPDF.dll)?
|
|||
|---|---|---|---|
|
#18+
Если ты хочешь что-то вытаскивать из PDF файла, то не получится - эта библиотека всего лишь растеризатор PDF. Годится только для отображения картинок. В составе Chrome есть библиотека pdf.dll - в ней всё честно, и хидеры, и примеры использования можно найти по слову "Foxit PDF SDK DLL" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2015, 09:44 |
|
||
|
Кто-нибудь делал паскалевскую обертку над muPDF (libmuPDF.dll)?
|
|||
|---|---|---|---|
|
#18+
defecator, мне, в общем, и нужно отображать. Да еще чтобы поиск по тексту был. И экспорт в текст. И работа с гиперссылка. Все это суматра делает, как и тестовый пример из muPDF. Впрочем, возможно, что поиск и экспорт делаются другими средствами. Исходники тестового примера вроде довольно простые, но подробно я их пока не изучал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2015, 09:59 |
|
||
|
Кто-нибудь делал паскалевскую обертку над muPDF (libmuPDF.dll)?
|
|||
|---|---|---|---|
|
#18+
Вот есть перевод libmuPDF под Lazarus: https://github.com/blestan/lazmupdf ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2015, 10:03 |
|
||
|
Кто-нибудь делал паскалевскую обертку над muPDF (libmuPDF.dll)?
|
|||
|---|---|---|---|
|
#18+
defecatorВот есть перевод libmuPDF под Lazarus: https://github.com/blestan/lazmupdf Спасибо. ...Ух ты, дешево и сердито. Автор не заморачивался импортом структур, если те использовались в нужных методах в виде ссылки и создавались в недрах библиотеки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2015, 10:24 |
|
||
|
Кто-нибудь делал паскалевскую обертку над muPDF (libmuPDF.dll)?
|
|||
|---|---|---|---|
|
#18+
Небольшой отчет. defecatorВот есть перевод libmuPDF под Lazarus: https://github.com/blestan/lazmupdf Выяснилось, что lazmudpf может работать исключительно с той версией libmuPDF, которая была в момент разработки. Приложение - пример из lazmudpf использует виджеты библиотеки lazpaint, которую можно загрузить отсюда: http://switch.dl.sourceforge.net/project/lazpaint/src/lazpaint6.4.1_src.zip lazmudpf с современными версиями libmuPDF не работает. Вообще, построение libmuPDF.dll для muPDF не предусмотрено, разработчик SumatraPDF готовит её как бесплатное приложение к SumatraPDF. Текущая версия SumatraPDF - 3.0. И библиотека libmuPDF.dll - тоже 3.0. Её можно построить самому, загрузив исходники https://kjkpub.s3.amazonaws.com/sumatrapdf/rel/SumatraPDF-3.0-src.7z Использовать MS VS 2013 комьюнити эдишн. Экспортируемые из библиотеки методы перечислены в файле libmupdf.def. Принцип работы с библиотекой довольно прост. Сначала создается т.н. "контекст" библиотеки. Потом открывается pdf документ. Одним из свойств документа является количество страниц. Далее из документа извлекаются нужные страницы. Страницу можно превратить (например) в png картинку или получить битовую карту изображения. В последнем случае следует учесть, что просто "бросить" карту на устройство отображения (на "канвас"), то картинка получается отраженной вертикально. То есть, нужно немножко поработать. В примере из комплекта лазаруса для вертикального "отражения" используется команда. Код: pascal 1. Библиотека muPDF поставляется с исходным кодом pdf - браузера, который "почти как суматра". Выполняется поиск, переход по гиперссылкам, масштабирование... Но все сии действия реализуются не библиотекой, а ручками. Библиотека помогает. Например, по указанным координатам указателя мыши определить, что за объект там находится: текст, картинка, гиперссылка, встроенный виджет и т.п. А реакцию ты должен писать самостоятельно. то есть, перспективного гемора - маманегорюй. Имхо, дешевле купить готовый компонент, если есть подходящий. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2015, 22:24 |
|
||
|
Кто-нибудь делал паскалевскую обертку над muPDF (libmuPDF.dll)?
|
|||
|---|---|---|---|
|
#18+
чччД, что мешает заюзать 17506736 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2015, 22:34 |
|
||
|
Кто-нибудь делал паскалевскую обертку над muPDF (libmuPDF.dll)?
|
|||
|---|---|---|---|
|
#18+
defecatorВ составе Chrome есть библиотека pdf.dll - в ней всё честно, и хидеры, и примеры использования можно найти по слову "Foxit PDF SDK DLL" Эта библиотека даже не позволяет высоту страницы получить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2015, 23:09 |
|
||
|
Кто-нибудь делал паскалевскую обертку над muPDF (libmuPDF.dll)?
|
|||
|---|---|---|---|
|
#18+
Кроик СемёнdefecatorВ составе Chrome есть библиотека pdf.dll - в ней всё честно, и хидеры, и примеры использования можно найти по слову "Foxit PDF SDK DLL" Эта библиотека даже не позволяет высоту страницы получить P.S. приходилось её вычислять "примерно" умножив ширину на sqrt(2). Если укажешь высоту битмапа меньше чем нужно для страницы, то, если правильно помню, вызов функции RenderPDFPageToDC выводил белый квадрат ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2015, 12:01 |
|
||
|
Кто-нибудь делал паскалевскую обертку над muPDF (libmuPDF.dll)?
|
|||
|---|---|---|---|
|
#18+
P.P.S. кстати, если пригодится, вот моя обертка для хромовской pdf.dll MyChromePDFRender.pas Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. 201. 202. 203. 204. 205. 206. 207. 208. 209. 210. 211. 212. 213. 214. 215. 216. 217. 218. 219. 220. 221. 222. 223. 224. 225. 226. 227. 228. 229. 230. 231. 232. 233. 234. 235. 236. 237. 238. 239. 240. 241. 242. 243. 244. 245. 246. 247. 248. 249. 250. 251. 252. 253. 254. 255. 256. 257. 258. 259. 260. 261. 262. 263. 264. 265. 266. 267. 268. 269. 270. 271. 272. 273. 274. 275. 276. 277. 278. 279. 280. 281. 282. 283. 284. 285. 286. 287. 288. 289. 290. 291. 292. 293. 294. 295. 296. 297. 298. 299. 300. 301. 302. 303. 304. 305. 306. 307. 308. 309. 310. 311. 312. 313. 314. 315. 316. 317. 318. 319. 320. 321. 322. 323. 324. 325. 326. 327. 328. 329. 330. 331. 332. 333. 334. 335. 336. 337. 338. 339. 340. 341. 342. 343. 344. 345. 346. 347. 348. 349. 350. 351. 352. 353. 354. 355. 356. 357. 358. 359. 360. 361. 362. 363. 364. 365. 366. 367. 368. 369. 370. 371. 372. 373. 374. 375. 376. MyPDFRender.pas Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2015, 12:11 |
|
||
|
Кто-нибудь делал паскалевскую обертку над muPDF (libmuPDF.dll)?
|
|||
|---|---|---|---|
|
#18+
Чуваки! Всем Здравия! Может кому пригодится... pdf.dll от хрома бывают разные. В одной из них нашел функцию "GetPDFPageSizeByIndex". Вмонтировал ее в обёртку Кроик Семёна - ВСЕ РАБОТАЕТ! Размеры, и соответственно ориентация страниц pdf документа известны. Огромное спасибо Кроик Семёну за его обертку! Если что, ищете pdf.dll с этой функцией... Параметры которые принимает эта функция TGetPDFPageSizeByIndexProc = procedure(pdf_buffer : PChar; pdf_buffer_size : integer; page_number : integer; width : PDouble; height : PDouble ); cdecl; узнал где то здесь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2017, 09:21 |
|
||
|
Кто-нибудь делал паскалевскую обертку над muPDF (libmuPDF.dll)?
|
|||
|---|---|---|---|
|
#18+
VolkodavSR, надо же, как pdf.dll изменилась за эти годы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2017, 17:02 |
|
||
|
Кто-нибудь делал паскалевскую обертку над muPDF (libmuPDF.dll)?
|
|||
|---|---|---|---|
|
#18+
Снова сошли руки до pdf.dll, начинаю дорабатывать обертку. Для всех интересующихся темой PDF.DLL от Google Chrome вот немного информации: 1) как уже было сказано VolkodavSR двумя постами выше, существует расширенная версия PDF.DLL. Спустя многочасовое гугление удалось её найти здесь (я выложу далее, чтобы осталась здесь для истории). Скачал отсюда: https://www.dll.ru/files/pdf-dll.html (страшно, а вдруг с вирусом. Надо будет построить испытательный полигон, а так онлайн-антивирусы говорят что нормальная) 2) вот документация к DLLке, взял отсюда: https://chromium.googlesource.com/chromium/src/ /master/pdf/pdf.h pdf.h Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 3) несколько лет назад Google открыл исходники библиотеки (правда под именем pdfium), так что если я правильно понимаю, либу стало возмжно клегально распространять с проектом. Вот статья на немецком: https://www.golem.de/news/google-chromes-pdf-renderer-ist-open-source-1405-106692.html 4) можно было бы воспользоваться новой библиотекой PDFIUM.DLL, но она уж сильно навороченная по сравнению с PDF.DLL, так что я этим путем не пойду, оставлю лишь здесь пару ссылок, чтобы мое гугление не пропало зря пара ссылок про pdfium скомпилированную версия pdfium.dll можно найти здесь: https://assendelft.webathome.org/Pdfium/ актуальная версия на сегодня, которая и на Win XP пойдет, эта: https://assendelft.webathome.org/Pdfium/2018-03-04/PdfiumViewer-x86-no_v8-no_xfa/pdfium.dll Projekts: https://github.com/pvginkel/PdfiumBuild https://github.com/pvginkel/PdfiumViewer Delphi-wrapper: https://github.com/ahausladen/PdfiumLib/blob/master/Source/PdfiumLib.pas ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2018, 17:46 |
|
||
|
Кто-нибудь делал паскалевскую обертку над muPDF (libmuPDF.dll)?
|
|||
|---|---|---|---|
|
#18+
Думал переименованным в JPEG архивчиком выложить, ан нет. Умный сайт. Не получится на SQL.RU разместить. Даю ссылку на dropbox, постараюсь там не удалить случайно в следующие годы. https://www.dropbox.com/sh/swzdcdimuo39fbu/AAAM1fltKGNHjm3RvAIAYZr2a?dl=0 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2018, 17:58 |
|
||
|
Кто-нибудь делал паскалевскую обертку над muPDF (libmuPDF.dll)?
|
|||
|---|---|---|---|
|
#18+
Обертка для новой версии PDF.DLL готова. Выкладываю, вдруг кому-нибудь пригодится. Version 2.0 MyPDFRender.pas Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. 201. 202. 203. 204. 205. 206. 207. 208. 209. 210. 211. 212. 213. 214. 215. 216. 217. 218. 219. 220. 221. 222. 223. 224. 225. 226. 227. 228. 229. 230. 231. 232. 233. 234. 235. 236. 237. 238. 239. 240. 241. 242. 243. 244. 245. 246. 247. 248. 249. 250. 251. 252. 253. 254. 255. 256. 257. 258. 259. 260. 261. 262. 263. 264. 265. 266. 267. 268. 269. 270. 271. 272. 273. 274. 275. 276. 277. 278. 279. 280. 281. 282. 283. 284. 285. 286. 287. 288. 289. 290. 291. 292. 293. 294. 295. 296. 297. 298. MyChromePDFRender.pas Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. 201. 202. 203. 204. 205. 206. 207. 208. 209. 210. 211. 212. 213. 214. 215. 216. 217. 218. 219. 220. 221. 222. 223. 224. 225. 226. 227. 228. 229. 230. 231. 232. 233. 234. 235. 236. 237. 238. 239. 240. 241. 242. 243. 244. 245. 246. 247. 248. 249. 250. 251. 252. 253. 254. 255. 256. 257. 258. 259. 260. 261. 262. 263. 264. 265. 266. 267. 268. 269. 270. 271. 272. 273. 274. 275. 276. 277. 278. 279. 280. 281. 282. 283. 284. 285. 286. 287. 288. 289. 290. 291. 292. 293. 294. 295. 296. 297. 298. 299. 300. 301. 302. 303. 304. 305. 306. 307. 308. 309. 310. 311. 312. 313. 314. 315. 316. 317. 318. 319. 320. 321. 322. 323. 324. 325. 326. 327. 328. 329. 330. 331. 332. 333. 334. 335. 336. 337. 338. 339. 340. 341. 342. 343. 344. 345. 346. 347. 348. 349. 350. 351. 352. 353. 354. 355. 356. 357. 358. 359. 360. 361. 362. 363. 364. 365. 366. 367. 368. 369. 370. 371. 372. 373. 374. 375. 376. 377. 378. 379. 380. 381. 382. 383. 384. 385. 386. 387. 388. 389. 390. 391. 392. 393. 394. 395. 396. 397. 398. 399. 400. 401. 402. 403. 404. 405. 406. 407. 408. 409. 410. 411. 412. 413. 414. 415. 416. 417. 418. 419. 420. 421. 422. 423. 424. 425. 426. 427. 428. 429. 430. 431. 432. 433. 434. 435. 436. 437. 438. 439. 440. 441. 442. 443. 444. 445. 446. 447. 448. 449. 450. 451. 452. 453. 454. 455. 456. 457. 458. 459. 460. 461. 462. 463. 464. 465. 466. 467. 468. 469. 470. 471. 472. 473. 474. 475. 476. 477. пример использования Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.03.2018, 17:55 |
|
||
|
Кто-нибудь делал паскалевскую обертку над muPDF (libmuPDF.dll)?
|
|||
|---|---|---|---|
|
#18+
Кроик Семён, огромное спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2018, 16:06 |
|
||
|
Кто-нибудь делал паскалевскую обертку над muPDF (libmuPDF.dll)?
|
|||
|---|---|---|---|
|
#18+
P.S. забыл про одну фичу сказать: компонент возможно использовать как свойство другого комрпонента, причем загруженный в него в design-time pdf-файл отлично сохранится в ресурсы (dfm, например). Зачем? Ну, например, в качестве векторного аналога TPicture. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2018, 18:43 |
|
||
|
Кто-нибудь делал паскалевскую обертку над muPDF (libmuPDF.dll)?
|
|||
|---|---|---|---|
|
#18+
У меня сделан такой для Fastreport'a. Круто? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2018, 18:48 |
|
||
|
Кто-нибудь делал паскалевскую обертку над muPDF (libmuPDF.dll)?
|
|||
|---|---|---|---|
|
#18+
Создал новый топик по обертке ( ChromePDFRendererForDelphi - обертка для PDF.DLL от Google Chrome ). Если будут вопросы, просьба там. А этот топик путь останется про muPDF . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2018, 13:10 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39619448&tid=2041107]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
190ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
61ms |
get tp. blocked users: |
1ms |
| others: | 239ms |
| total: | 531ms |

| 0 / 0 |
