Mi chiedevo se ci fosse una facile generazione di miniature di file PDF in Delphi. Fondamentalmente voglio rendere la prima pagina di un PDF in una piccola bitmap (diciamo 100x100 o simile).
Vedo due opzioni 1 utilizzare un componente PDF, 2 in qualche modo toccare in che modo explorer genera anteprime/miniature.Miniature PDF in Delphi
risposta
È possibile trovare un elenco di gestori di anteprima installati (in Vista e Windows 7) in HKLM \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ PreviewHandlers.
Se è installato qualsiasi gestore PDF (ad esempio, quando Acrobat Reader è installato), è possibile cercare il server COM cercando il GUID trovato in precedenza. Questo in combinazione con l'interfaccia IPreviewHandler può guidarti verso una soluzione.
Utilizzare una libreria come QuickPDF o Gnostice è davvero l'opzione più semplice. Sono abbastanza sicuro che le miniature PDF in explorer siano effettivamente generate da qualunque software PDF sia installato come Adobe. A meno che non si possa garantire che sia installato un lettore PDF appropriato su ogni workstation, l'idea di utilizzare le miniature potrebbe non essere valida.
Modifica: questa è un'applicazione completa che utilizza QuickPDF per eseguire il rendering della prima pagina di un determinato file PDF in un file BMP. A 10 DPI il mio file BMP di output è 85 pixel di larghezza per 110 pixel di altezza.
program PDFToBMP;
{$APPTYPE CONSOLE}
uses
SysUtils, QuickPDF;
var
Q : TQuickPDF;
begin
Q := TQuickPDF.Create;
try
Q.LoadFromFile(ParamStr(1), '');
Q.RenderPageToFile(10 {DPI}, 1 {PageNumber}, 0 {0=BMP}, ChangeFileExt(ParamStr(1),'.bmp'));
finally
Q.Free;
end;
end.
O se avete "tempo" che si potrebbe provare a utilizzare GhostScript sia da riga di comando o embedding it. Mike W. ti ha dato una soluzione buona e facile. Io uso Gnostice ma ci sono molte altre soluzioni PDF VCL.
- 1. Produce miniature da pdf su Android
- 2. Delphi XE2: Visualizza PDF in un'applicazione Delphi FireMonkey su OSX
- 3. Vista applicazione delle miniature
- 4. Delphi: come stampare un PDF senza mostrarlo?
- 5. L'elenco di miniature Bootstrap non mostra le miniature
- 6. Come creare delle miniature per la prima pagina pdf con carrierwave
- 7. Conversione PDF to JPG come Photoshop qualità - Commerciale C++/Delphi biblioteca
- 8. "Delphi Fundamentals" in Delphi 2009
- 9. Qual è il modo migliore per visualizzare un file PDF in Delphi 2009
- 10. Dropzone cross-platform generazione delle miniature
- 11. Come posso generare miniature circolari con PIL?
- 12. Regex per generare miniature!?!?! (ma è pazzesco!)
- 13. MediaStore.Images.Thumbnails.getThumbnail torna miniature sbagliato, invece di NULL
- 14. Forza miniature di alta qualità per YouTube
- 15. Come ottenere miniature YQ di YouTube?
- 16. Generazione di miniature casuali con PHP + FFMPEG
- 17. Generazione di miniature personalizzate da ALAssetRepresentation
- 18. Aggiunta small_image e miniature di programmazione
- 19. fluente-ffmpeg errore di creazione delle miniature
- 20. Colore riempimento del PIL ritaglio/miniature
- 21. rendendo jfilechooser mostra le miniature delle immagini
- 22. FFMpeg - Creazione di miniature per file video
- 23. Il modo più efficiente per creare miniature?
- 24. Allinea orizzontalmente le miniature al centro
- 25. Come recuperare le miniature quadrate da PHImageManager?
- 26. Come arrivare Android contatto delle miniature
- 27. Come ottenere le miniature da qualsiasi URL in iOS?
- 28. Miniature nivo slider che non vengono visualizzate correttamente in IE
- 29. Estrai tutto da PDF
- 30. Sostituisci immagine in PDF con un'altra immagine box in pdf
Sembra che anche i gestori di anteprime si trovino nella stessa posizione su XP. – Alister