mailing-list for TeXmacs Users

Text archives Help

[TeXmacs] Fwd: Re: Image Inclusion (aka inline plots)

Chronological Thread 
  • From: "David E. Miller" <address@hidden>
  • To: address@hidden
  • Subject: [TeXmacs] Fwd: Re: Image Inclusion (aka inline plots)
  • Date: Fri, 24 May 2013 13:53:20 -0400
  • Authentication-results: smtp.user=address@hidden; auth=pass (LOGIN)
  • X_cmae_category: 0,0 Undefined,Undefined

-------- Original Message -------- From: - Fri May 24 13:48:45 2013 X-Mozilla-Status: 0001 X-Mozilla-Status2: 00800000 X-Mozilla-Keys:
Message-ID: <address@hidden> Date: Fri, 24 May 2013 13:48:39 -0400 From: David E. Miller <address@hidden> Reply-To: address@hidden User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130509 Thunderbird/17.0.6 MIME-Version: 1.0 To: Andrea Gamba <address@hidden> CC: Bill Eaton <address@hidden>, Henri Girard <address@hidden> Subject: Re: [TeXmacs] Image Inclusion (aka inline plots) References: <CAMRr7VWMGwM93+w-L+Vbn4RF=address@hidden> In-Reply-To: <CAMRr7VWMGwM93+w-L+Vbn4RF=address@hidden> Content-Type: multipart/mixed; boundary="------------020306030106020906070202"

On 5/24/2013 3:20 AM, Andrea Gamba wrote:
> Hello, I am routinely using the ps_out() method to get inline figures
> with scipy and the python plugin.
> The figures I obtain are by default much larger than the width of the
> page, so I have to manually resize them one by one.
> Is it possible to use ps_out() with an argument specifying the size of
> the inline figure, or is there any optimal way to produce an inline
> figure of desired size?
> Andrea Gamba
Hi Andrea:

You should have received a reply from Bill Eaton concerning your message 
related to inline image inclusion.
I think he is spot on in this matter. The ps_out() method is not a 
feature of TeXmacs. It is a feature of the
Python plugin code. It slots an EPS file into the Python session space 
of a TeXmacs document. There are no
arguments to this method that I know of to "re-size" the file if it is 
too big for the real estate of the session.
It is up to the user to to generate the the EPS file by whatever means 
so that it is of the desired dimensions.

Evidently there is some interest in having this capability. I am not 
sure exactly what is driving the need for this
feature, but I presume that there must be one or more reasons why users 
want to do this.

However, having said that, the built-in image inclusion tools of TeXmacs 
are much better in general for this
purpose. You do  not have to use the ps_out() function to insert an 
image into the Python session space of
a TeXmacs document. If instead you use the built-in image inclusion 
methods of linking or inserting images
then you will be able to re-size to your heart's content.

There are two ways to do this:

1. Between and two lines of a TeXmacs Python session with the cursor in 
the session and the session in focus,
use the Focus -->  Insert text field above (or Insert text field below, 
according to where you want to insert the image)
and with that TeXmacs inserts a TeXmacs text area between the line of 
the session input and output. This area can be use
like any TeXmacs area outside the session -- for text, mathematical 
expressions, and images. I have not tried tables,
but it would not surprise me if these work also. However, the current 
Python session is still active. Just be sure to
leave at least one Python] session prompt at the bottom so that you can 
continue to enter more expressions after
the text area. You can slot these text areas in at any time. By this I 
mean you could enter all the Python expressions
of the session and the go back and insert the text areas between the 
Python input and output lines. Or you could do
this as you go one line at time. Personally, I like the first method. 
Mistakes are easier to fix.

2. With the TeXmacs cursor in a text area, use one the following menu items:

-  Insert --> Image --> Big figure or
-  Insert --> Image --> Small figure

the difference being a matter of choice. Big figure is big and centered 
and Small figure is small and left justified by default.
You will have to experiment to see which suits your needs. Either of 
these inserts a figure area into the TeXmacs text area
of your session. Now move the cursor so that the Big or Small figure 
area is in focus.

3. Then choose one of the following menu items:

-  Insert -->  Image --> Link image ... or
-  Insert -->  Image --> Insert image ...

the difference being whether or not you want your image file linked to 
the TeXmacs document or included.

I recommend linking images files. If you are going to print the TeXmacs 
document or export to PDF, the result
will be the same in both cases. However, by linking, changes to the 
images will flow through, and if inserted
this does not occur. Even if you are going to distribute the TeXmacs 
document itself, linking will work. Merely
create a folder for your TeXmacs document, and a sub-folder within that 
folder for all the images and then
link them from there. Then tar and gzip (.tgz or whatever) the folder 
containing the TeXmacs document and
image folder and use the resulting archive file for distribution. Keep 
in mind that an exported PDF file should
be noticeably smaller.

Or, you can skip step 2 and merely insert or link the image file in the 
TeXmacs session text area using one
of step 3. If you do that you can change the alignment of the image 
using one of the

-  Format--> Paragraph-Alignment-- Left aligned | Center | Right aligned

menu selection items. This would result in what is most like what has 
been called "inline" image insertion.

In any case when the image is inserted you will see that if the image is 
in focus, it may be sized according
to your needs. There are ways to do both absolute (e.g., 3.5in , 7.8cm) 
and relative (e.g., 0.7par) sizing of images.
It is usually only necessary to re-size using the width. Refer to the 
TeXmacs documentation for more information
about the available absolute and relative parameters and units that can 
be used for the width and height of
images. Merely enter your Width: (and/or Height:) parameter using the 
window in the appropriate slot
that appears at the top of the page in the focus area below the menu 
items and icons bar. This can also be
accomplished using similar entries from the file selection dialog window 
that appears for selecting the file to
be linked or inserted.

In my opinion, this is the best way to include images "inline" in a 
TeXmacs plugin session. This works for other sessions
such as Maxima and Octave also. In fact it should work for any session 
that allows the insertion of a text area
between session input and output lines. Additionally, text and 
mathematical _expression_ may be entered in the
text area either above or below the image or in the figure title -- for 
Big figure and Small figure. The image can also
be aligned as desired. This is not possible with ps_out() as far as I know.

Attached is a PDF file that is the article  some of the image inclusion 
issues relevant to TeXmacs. In particular this article
was motivated by the problem of images that had "transparency" effects. 
However, whether or not this is an issue,
the article contains information that I believe is useful in general 
with respect to TeXmacs image inclusion.

Now this may all sound really complex, but once you go through this by 
experimenting with a practice TeXmacs
file and some typical image files you will see how easy this really is. 
Lastly, I cannot say this too many times --
always, always, always use EPS and if you cannot then convert whatever 
you have to EPS. This will save you a ton
of headaches. If you must use ps_out() for some reason then create your 
EPS files to the size you require for the
document. The attached article may help you for re-sizing EPS files and 
converting others to EPS.

Long message = complete answer I hope.

Best wishes,

David E. Miller

Attachment: Some_TeXmacs_Image_Inclusion_Considerations-o.pdf
Description: Adobe PDF document

Archive powered by MHonArc 2.6.19.

Top of page