It helped to delete the method:
img.resize(min(abs(x2-x1)/PDFPreviewScale, img.width()), min(abs(y2-
y1)/PDFPreviewScale, img.height()), 4);

Thx for all your help.

Regards
Allan

--- In [email protected], "wan54404"
<[EMAIL PROTECTED]> wrote:
>
> Thx for your reply, but it didnt help.
> I dont think its a SP4 problem. I have the same problem with SP3
and
> SP1.
> It seems like Axapta cant scale the picture when inserting it into
a
> pdf file, but keeps the original size... (works fine with 'print 2
> screen')
>
> Any suggestions?
>
> Regards
> Allan
>
>
> --- In [email protected], Palle Mølgaard <pm@>
> wrote:
> >
> > That's a new feature of SP4 :-(
> >
> > 
> >
> > Change hhe writeBitmap() method of PDFViewer to look like this,
> then you're back to working bitmaps :
> >
> > 
> >
> > public void writeBitmap(OutputBitmapField _field, OuputSection
> _section)
> >
> > {
> >
> >     BinData bin = new BinData();
> >
> >     image img;
> >
> >     container data;
> >
> >     str s;
> >
> >     real x1,x2, y1,y2;
> >
> >     struct br;
> >
> >     int imageObjectNo = 0;
> >
> >     //real PDFPreviewScale = 0.8;       // New in SP4 - not
needed
> when using SP3 version
> >
> >     boolean generateXImage = false;
> >
> >     container c;
> >
> >     str fn;
> >
> > 
> >
> >     br = this.boundingRectTwips(currentPage, _section, _field);
> >
> > 
> >
> >     x1 = br.value('x1'); y1 = br.value('y1');
> >
> >     x2 = br.value('x2'); y2 = br.value('y2');
> >
> > 
> >
> >     if (_field.type() == 10) // resourceId, DB_RESID
> >
> >     {
> >
> >         img = new Image(_field.resourceId());
> >
> > 
> >
> >         if (resourceIdImageMap.exists(_field.resourceId()))
> >
> >             imageObjectNo = resourceIdImageMap.lookup
> (_field.resourceId());
> >
> >         else
> >
> >         {
> >
> >             imageObjectNo = this.nextObjectNo();
> >
> >             resourceIdImageMap.insert(_field.resourceId(),
> imageObjectNo);
> >
> >             generateXImage = true;
> >
> >         }
> >
> > 
> >
> >         if (debugLevel >= 1)
> >
> >             info ('Image in resource ' + int2str
(_field.resourceId
> ()));
> >
> >     }
> >
> >     else if (_field.type() == 7) // queue
> >
> >     {
> >
> >         c = _field.value();
> >
> >         if (c)
> >
> >         {
> >
> >             img = new Image(c);
> >
> >             imageObjectNo = this.nextObjectNo();
> >
> >         }
> >
> >         generateXIMage = true;
> >
> > 
> >
> >         if (debugLevel >= 1)
> >
> >         {
> >
> >             if (img)
> >
> >                 info ('Image in container');
> >
> >             else
> >
> >                 info ('No image in container');
> >
> >         }
> >
> >     }
> >
> >     else // string containing filename
> >
> >     {
> >
> >         img = new Image(_field.imageFilename());
> >
> > 
> >
> >         if (stringImageMap.exists(_field.imageFilename()))
> >
> >             imageObjectNo = stringImageMap.lookup
> (_field.imageFilename());
> >
> >         else
> >
> >         {
> >
> >             imageObjectNo = this.nextObjectNo();
> >
> >             stringImageMap.insert(_field.imageFilename(),
> imageObjectNo);
> >
> >             generateXImage = true;
> >
> >         }
> >
> > 
> >
> >         if (debugLevel >= 1)
> >
> >             info ('File is ' + _field.imageFileName());
> >
> >     }
> >
> > 
> >
> >     if (img)
> >
> >     {
> >
> >         if (generateXImage)
> >
> >         {
> >
> >             // We have not seen this image before, so generate
an
> XIMage for it
> >
> >             // Save the image as a jpg file.
> >
> >             fn = winApi::getTempFilename(winApi::getTempPath
> (), 'AXP');
> >
> > 
> >
> >             // SP4 does not work! - back to SP3 code
> >
> >             //RH#4382, v-yuriv, 24-11-2004
> >
> >             //We should resize the bitmap according to the area
> given in PDF page otherwise there will be out of area drawing
> >
> >             //The PDF bitmap drawing has wrong scaling from what
> we see in the preview so we should also scale it by PDFPreviewScale
> >
> >             //img.resize(min(abs(x2-x1)/PDFPreviewScale,
img.width
> ()), min(abs(y2-y1)/PDFPreviewScale, img.height()), 4);
> >
> > 
> >
> >             img.saveImage(fn, ImageSaveType::JPG);
> >
> > 
> >
> >             bin.loadFile(fn);
> >
> >             data = ""> > >
> > 
> >
> >             // Get rid of the temporary file.
> >
> >             winApi::deleteFile(fn);
> >
> > 
> >
> >             if (bitmapEncode85)
> >
> >                 s = bin.ascii85Encode();
> >
> >             else
> >
> >                 s = bindata::dataToString(data);
> >
> > 
> >
> >             // Use the image dimensions if the user didn't
specify
> resize
> >
> > 
> >
> >             objectOffsetMap.insert(imageObjectNo, buffer.size());
> >
> >             imagesOnPage.add(imageObjectNo);
> >
> > 
> >
> >             buffer.appendText(int2str(imageObjectNo) + ' 0 obj
> <<\r');
> >
> >             buffer.appendText
> ('  /Type/XObject /Subtype/Image /ColorSpace /DeviceRGB\r');
> >
> >             buffer.appendText('  /Name /I' + int2str
> (imageObjectNo) + ' /BitsPerComponent 8\r');
> >
> >             if (!bitmapEncode85)
> >
> >             {
> >
> >                 buffer.appendText('  /Filter
> [/ASCIIHexDecode/DCTDecode] /DecodeParms[null<<>>]\r');
> >
> >                 buffer.appendText(strfmt('  /Length %1\r', strlen
> (s)+1));    // Allow for end of data marker
> >
> >             }
> >
> >             else
> >
> >             {
> >
> >                 buffer.appendText('  /Filter
> [/ASCII85Decode/DCTDecode] /DecodeParms[null<<>>]\r');
> >
> >                 buffer.appendText(strfmt('  /Length %1\r', strlen
> (s)));
> >
> >             }
> >
> >             buffer.appendText(strfmt('  /Width %1 /Height %2\r',
> img.width(), img.height()));
> >
> >             buffer.appendText('>>\rstream\r');
> >
> >             buffer.appendText(s);
> >
> > 
> >
> >             if (!bitmapEncode85)
> >
> >                 buffer.appendText('>'); // End of Data marker
> >
> > 
> >
> >             buffer.appendText('\rendstream\rendobj\r');
> >
> >         }
> >
> > 
> >
> >         // SYP-Modification R-DEN-DDSP-KITR-04447 - Begin (SP3)
> >
> >         // Have to put imageObjectNo or it will be only on page
#1
> >
> >         imagesOnPage.add(imageObjectNo);
> >
> >         // SYP-Modification R-DEN-DDSP-KITR-04447 - End (SP3)
> >
> > 
> >
> >         // Generate the object that draws the image...
> >
> >         s  = 'q\r';
> >
> > 
> >
> >         s += this.drawFieldFrame(_field, x1, y1, x2, y2);
> >
> > 
> >
> >         // Provide a scaling factor bringing the image size up
to
> the size requested by the report
> >
> >         // Also, provide x,y pos)
> >
> >         if (_field.resize())
> >
> >             s += '   ' + this.real2str(x2-x1) + ' 0 0 ' +
> this.real2str(y2-y1) + ' ' + this.real2str(x1) + ' ' +
this.real2str
> (y1) + ' cm\r';
> >
> >         else
> >
> >         {
> >
> >             x1 += this.twips(this.borderWidth(_field.borderWidth
> (), _field.lineLeft()));
> >
> >             y1 += this.twips(this.borderWidth(_field.borderWidth
> (), _field.lineRight()));
> >
> >             x2 -= this.twips(this.borderWidth(_field.borderWidth
> (), _field.lineTop()));
> >
> >             y2 -= this.twips(this.borderWidth(_field.borderWidth
> (), _field.lineBottom()));
> >
> > 
> >
> >             if (_field.alignment() == ALIGNMENT::Center)
> >
> >             {
> >
> >                 x1 = (x1 + x2 - img.width()) / 2;
> >
> >                 y1 = (y1 + y2 - img.height()) / 2;
> >
> >             }
> >
> >             else if (_field.alignment() == ALIGNMENT::Right)
> >
> >             {
> >
> >                 x1 = x2 - img.width();
> >
> >                 y1 = y2 - img.height();
> >
> >             }
> >
> >             else    // left
> >
> >             {
> >
> >                 y1 = y2 - img.height();
> >
> >             }
> >
> >             // SP4 does not work! - back to SP3 code
> >
> >             //RH#4382, v-yuriv, 24-11-2004
> >
> >             //The PDF bitmap drawing has wrong scaling from what
> we see in the preview so we should also scale it by PDFPreviewScale
> >
> >             //s += '   ' + this.real2str
(PDFPreviewScale*img.width
> ()) + ' 0 0 ' + this.real2str(PDFPreviewScale*img.height()) + ' '
+
> this.real2str(x1) + ' ' + this.real2str(y1) + ' cm\r';
> >
> >             s += '   ' + this.real2str(img.width()) + ' 0 0 ' +
> this.real2str(img.height()) + ' ' + this.real2str(x1) + ' ' +
> this.real2str(y1) + ' cm\r';
> >
> >         }
> >
> > 
> >
> >         s += '   /I' + int2str(imageObjectNo) + ' Do\r';
> >
> >         s += 'Q\r';
> >
> > 
> >
> >         pagePDF.appendText(s);
> >
> >     }
> >
> >     super(_field, _section);
> >
> > }
> >
> > 
> >
> > Regards
> >
> >      Palle Mølgaard
> >
> >       Systemate A/S
> >
> > ________________________________
> >
> > From: [email protected] [mailto:development-
> [EMAIL PROTECTED] On Behalf Of Allan Ørum
> > Sent: 27. februar 2006 21:30
> > To: [email protected]
> > Subject: [development-axapta] Bitmaps in pdf files
> >
> > 
> >
> > Hi,
> > I have a problem with pdf files.
> > When I print to screen (eg a confirmation), my bitmaps comes out
> fine and
> > scaled.
> > But when I print to a pdf file, the bitmaps are placed funny,
and
> are no
> > longer scaled.
> >
> > Anyone with experience in this area?
> >
> > Regards Allan
> >
> >
> >
> >
> >
> >
> > SPONSORED LINKS
> >
> > Computer part <http://groups.yahoo.com/gads?
>
t=ms&k=Computer+part&w1=Computer+part&w2=Programming+languages&w3=Mic
>
rosoft+axapta&w4=Support+exchange&c=4&s=90&.sig=yLpvcLTIDJ5FTkRJGsO11
> w> 
> >
> > Programming languages <http://groups.yahoo.com/gads?
>
t=ms&k=Programming+languages&w1=Computer+part&w2=Programming+language
>
s&w3=Microsoft+axapta&w4=Support+exchange&c=4&s=90&.sig=cuhEClK4dU4wa
> pXFmKisbQ> 
> >
> > Microsoft axapta <http://groups.yahoo.com/gads?
>
t=ms&k=Microsoft+axapta&w1=Computer+part&w2=Programming+languages&w3=
>
Microsoft+axapta&w4=Support+exchange&c=4&s=90&.sig=yfeG_U6QaLfPOZZIud
> 02Fg> 
> >
> > Support exchange <http://groups.yahoo.com/gads?
>
t=ms&k=Support+exchange&w1=Computer+part&w2=Programming+languages&w3=
>
Microsoft+axapta&w4=Support+exchange&c=4&s=90&.sig=hy8yRGMzrmxdphyITT
> UeqA> 
> >
> > 
> >
> > 
> >
> > 
> >
> > ________________________________
> >
> > YAHOO! GROUPS LINKS
> >
> > 
> >
> > *      Visit your group "development-axapta
> <http://groups.yahoo.com/group/development-axapta> " on the web.
> >        
> > *      To unsubscribe from this group, send an email to:
> >       [EMAIL PROTECTED]
> <mailto:[EMAIL PROTECTED]
> subject=Unsubscribe>
> >        
> > *      Your use of Yahoo! Groups is subject to the Yahoo! Terms of
> Service <http://docs.yahoo.com/info/terms/> .
> >
> > 
> >
> > ________________________________
> >
> >
> >
> > [Non-text portions of this message have been removed]
> >
>









SPONSORED LINKS
Computer part Programming languages Microsoft axapta
Support exchange


YAHOO! GROUPS LINKS




Reply via email to