This is one I have been battling (as a self-taught to novice Docbook user), for some time. I was trying to find a common solution for block and inline images. What worked in Docbook 4 did not necessarily work after upgrading to Docbook 5. Two mins after documenting my solution for my team, your mail came in.
I tried all sorts of combinations of attributes and xsl styling. I ended up removing nearly all the image sizing content in our customisation layer and settled on this. For an image that is too wide, add scalefit="1" and contentwidth="100%" attributes to the <imagegedata> tag: e.g <mediaobject> <imageobject> <imagedata fileref="images/excel_ccode.png"/> </imageobject> </mediaobject> becomes <mediaobject> <imageobject> <imagedata scalefit="1" width="100%" fileref="images/excel_ccode.png"/> </imageobject> </mediaobject> 2 For an image that is too high to fit onto a page, add scalefit="1" and contentwidth="100%" attributes to the <imagegedata> tag For inline media objects, I just resize them in an image editor – don’t know if this is practical in your case though. There may be other considerations depending on your build tool chain. I am sure that experts will have a much more sophisticated customisation layer solution, but this is simple, works for me and I can easily roll out to the rest of my team. I do look forward to seeing solutions from more expert users. I’d love to get some feedback. Cheers Greg From: Paul Baumer [mailto:paul.baum...@gmail.com] Sent: 17 October 2016 03:29 PM To: email@example.com Subject: [docbook] Scale Image to fit in width or leave unscaled Hello, I would like to achieve the following image resizing as a general rule in my docbook5. I generate the docbook myself using python. And finally I generate pdf from the docbook. if image width will not fit the page it shall be resized to fit in width else image size shall be left unchanged I am aware of the scalefit, scale, width and content width. But I am having difficulty in using a combination of those to achieve the desired logic above. Paul ________________________________ All emails in this message string and any attachments are the confidential information of CSG Systems International, Inc. (CSG), or its affiliates and subsidiaries, and may contain privileged and/or confidential material. If you are not an intended recipient, please delete it immediately and notify the sender; unintended recipients are not authorized to read or otherwise use the information contained herein.