emf to pdf

Post Reply
User avatar
don lowenstein
Posts: 196
Joined: Mon Oct 17, 2005 9:09 pm
Contact:

emf to pdf

Post by don lowenstein »

Fivewin creates beautiful .EMF files within the report object.

Does anyone know of a utility or library I can call from within my applications to convert these .EMF files to a .PDF file?
Don Lowenstein
www.laapc.com
User avatar
Richard Chidiak
Posts: 946
Joined: Thu Oct 06, 2005 7:05 pm
Location: France
Contact:

Re: emf to pdf

Post by Richard Chidiak »

EnricoMaria wrote:Yes. Using PDFCreator you can make the process completely automatic.

EMG
Enrico

PDF creator will install avirtual printer just like Adobe distiller.
Is there a way to have a lib linked within an app (avoid installing the printer) that can allow converting from Emf to Pdf. If anyone has done the job and is willing to share,

If we can Enhance the FW preview to support Pdf creation and email (this part is easy), then it will be great. I would be personnally get rid of Easypreview that is not compatible with fwh anymore since over a year now.

Richard
User avatar
Silvio
Posts: 3107
Joined: Fri Oct 07, 2005 6:28 pm
Location: Teramo,Italy

Post by Silvio »

It would be fine to have as a fw function ......as EMF2PDF()....

Regards
silvio
User avatar
Silvio
Posts: 3107
Joined: Fri Oct 07, 2005 6:28 pm
Location: Teramo,Italy

Post by Silvio »

I know there is a DLL ( davinci) it can converte from emf to pdf ...but i not Know how I can make it
User avatar
Silvio
Posts: 3107
Joined: Fri Oct 07, 2005 6:28 pm
Location: Teramo,Italy

Post by Silvio »

User avatar
Silvio
Posts: 3107
Joined: Fri Oct 07, 2005 6:28 pm
Location: Teramo,Italy

Post by Silvio »

Now I found a C source (emf2pdf.cpp)
there is someone Know how make a fw function...?
User avatar
Richard Chidiak
Posts: 946
Joined: Thu Oct 06, 2005 7:05 pm
Location: France
Contact:

Post by Richard Chidiak »

Silvio wrote:http://www.herdsoft.com/ftp/downloads.html#davinci

here you can load the dll
Silvio,

Davinci is copyright protected, we can not include it in our apps just like this.

I want to check the pdf.lib from xharbour

Richard
User avatar
Silvio
Posts: 3107
Joined: Fri Oct 07, 2005 6:28 pm
Location: Teramo,Italy

Post by Silvio »

I found a file cpp now...

Code: Select all

// file: emf2pdf.cpp
// 
// Converts an EMF file to a 1 page PDF file.
//
// To build, make sure the files pdfGDI.dll, pdfGDI.lib, pdfGDI.h 
// are in the current directory, then from the command line:
//
// cl emf2pdf.cpp pdfGDI.lib gdi32.lib

#include <windows.h>
#include <stdio.h>
#include "pdfGDI.h"

void main(int argc, char *argv[])
{
	HDC dc;
	if (argc < 3)
	{
		printf("usage: emf2pdf filename.emf filename.pdf\n");
		return;
	}

	HPDFGDI h = pdfGDI_open(argv[2]);
	if (!h)
	{
		char msg[ ERROR_MSG_SIZE ];
		pdfGDI_getErrorMsg(h, msg);
		printf("pdfGDI_open failed: %s\n", msg);
		return ;
	}

	dc = pdfGDI_startPage(h, "A4");
	if (!dc)
	{
		char msg[ ERROR_MSG_SIZE ];
		pdfGDI_getErrorMsg(h, msg);
		printf("pdfGDI_startPage failed: %s\n", msg);
		return ;
	}

	// now play the EMF file  to our PDF dc

	HENHMETAFILE metaFileHandle = GetEnhMetaFile(argv[1]);
	if (metaFileHandle == 0)
	{
		printf("could not open metafile [%s]", argv[1]);
		return ;
	}

	RECT rect = {0, 0, 1000, 1000};
	if (!PlayEnhMetaFile(dc, metaFileHandle, &rect))
	{
		printf("PlayEnhMetaFile failed\n");
	}
	DeleteEnhMetaFile(metaFileHandle);

	pdfGDI_close(h);
}

I have also these files : pdfGDI.dll, pdfGDI.lib, pdfGDI.h but I think not have the source of pdfgdi.lib

Can you create a fw function ?
Regards
User avatar
Silvio
Posts: 3107
Joined: Fri Oct 07, 2005 6:28 pm
Location: Teramo,Italy

Post by Silvio »

pdf of xharbour (contrib) support only jpeg", "tiff", "gif", and "png"... I already test it
User avatar
Enrico Maria Giordano
Posts: 7355
Joined: Thu Oct 06, 2005 8:17 pm
Location: Roma - Italia
Contact:

Re: emf to pdf

Post by Enrico Maria Giordano »

Richard Chidiak wrote:Enrico

PDF creator will install a virtual printer just like Adobe distiller.
Yes, but you can drive it using an INI file. You can get the PDF file without any user action. And it is free.

EMG
Post Reply