Jump to content

Douglas Cogan

Administrators
  • Posts

    241
  • Joined

  • Days Won

    4

Posts posted by Douglas Cogan

  1. So, you want some records imposed and some not imposed, intermingled in the same output PDF?

    No, there is no way to do that. I'm trying to think how it would work if the imposition were stacking. Would you just intermingle pages that are single record pages next to imposed sheets in the same output PDF?

    What you could do is run it twice,and one time skip all the records that should be imposed and run it again and skip all the records that are not to be imposed and turn off imposition in between.

  2. Version 11 is too old to support Acrobat 2022. You'll need a new version of FusionPro or an old version of Acrobat. If you are under support or have a subscription you can get an upgrade. (If you have an active subscription you can use your version 11 key to install version 13.) You can email FusionProSupport@marcom.com with your serial number if you don't know if you have a subscription or are on maintenance.

  3. Hi, yes, you can set the data file to "None" when you use the data definition wizard. If you have a recent version of FusionPro there is a rule called "Output Each Page as Its Own Record" which would then impose all the pages of the PDF as if they were separate records.

    image.png.b2861cee5770e5abd41b4488363c4026.png

    Note that if there are many pages this might not be super fast.

     

     

    • Like 2
  4. Hi Kumas, do  you mean you are bringing in a formatted text resource? If so, you can make a new color (call it placeholder) and make the text you want to change the color called placeholder.

    You can then redefine the definition of placeholder in a rule. There is a form rule called Color from Data:

     

    image.png.02eac2a24396667b3be4744951ce6cd8.png

     

    The field can be a color definition such as 0 0 100 0 (for yellow) for 00FF00 (for green)

    Let us know if this helps.

     

     

  5. I would check the page size of the template page. Open the PDF file in Acrobat, and in the page tool, right click on the page and pick "Crop" - this will show each PDF box. Make sure they all are set to the size you want the output to be.

    Also, on the composition options dialog box, you can set the output page to be different than the PDF page. Check the custom page size on the imposition tab to see if that is set. Let us know if any of those is helpful.

     

    image.png.1dd9eb73d0f2094401bab8d4c9a1ef5a.png

  6. Hi Drew,

    The expectation is that the text would flow from one frame to the next and keep its formatting, kind of like wrapping around a picture. In order to accomplish what you need, you'll need to measure the text, adding content until it no longer fits in a frame, and then put that in as 2 paragraphs, one left aligned and one right aligned.

    If you're willing to send the job to FusionProSupport@marcom.com we can take a look at it.

  7. Hello Odell,

    Looks like the name is supposed to be in the format of Lastname;Firstname.

    Therefore if you have the first name and last name in separate fields you could make a small rule like this:

    return Field("LastName") + ";" + Field("FirstName");

    and call it FullNameForQRCode

    Then in your QR code GUI, put that function in the value for name, and I think you'll get what you want. Let me know if this works.

     

     

    • Thanks 1
  8. I'm not seeing the function ReturnNAIfEmpty called in either of these rules.

    For the first one, change this line:

     cell.Content = FormatGenericTagged(column.Format, data.GetFieldValue(r, column.Field));

    to

     cell.Content = FormatGenericTagged(column.Format, ReturnNAIfEmpty(data.GetFieldValue(r, column.Field)));

     

    For the second one, I think this is just the format rule, not the data rule. I'd need to see the data rule.

     


     

  9. You could make a function in JavaScriptGlobals like this:
     

    function ReturnNAIfEmpty(data)
    {
      if (Len(Trim(data)) == 0)
        return "N/A";
      return data;
    }

    Then your line above could be changed to:

    result += ReturnNAIfEmpty(data.GetFieldValue(r, "name")) + " " + ReturnNAIfEmpty(data.GetFieldValue(r, "observation")) + " " + ReturnNAIfEmpty(data.GetFieldValue(r, "interpretation")) + "\n";

    I think that will do what  you want. The ReturnNAIfEmpty also handles the case where it is just a space in the data (that's the Trim part)

  10. Thanks @ThomasLewis for jumping in on this.

    Starting in version 13, even Creator and Designer licenses can move and resize frames. Prior versions required the server/producer versions, but we lifted that restriction starting in 13.

    Agreed, a screen shot would help to resolve this. We can probably just do it in one frame.

    BTW very cool having the pizza emoji in the JavaScript. I didn't know we could do that!

    I think perhaps, though there might be a logic problem. This code:

    FindTextFrame("Tier1_Pizza2").y += shiftValue10; // move 🍕 #2 down by x
    FindTextFrame("Separator").y = FindTextFrame("Tier1_Pizza2").y; // move the separator down to our new y-coordinate for 🍕 #3
    FindTextFrame("Separator").y += shiftValue10; // Does nothing. Any ideas?

    The separator frame will be at the same y position as the Tier1_Pizza2 frame's TOP plus the shiftValue10. I think you want the separator below pizza2 plus the shiftValue (right)? That would mean you want the separator frame to include the height of the Tier1_Pizza2 frame, like this:

    FindTextFrame("Tier1_Pizza2").y += shiftValue10; // move 🍕 #2 down by x
    FindTextFrame("Separator").y = FindTextFrame("Tier1_Pizza2").y  +   FindTextFrame("Tier1_Pizza2").height ;      // move the separator down to our new y-coordinate for 🍕 #3
    FindTextFrame("Separator").y += shiftValue10; // Does nothing. Any ideas?

    Is that maybe what you want?

    Or if the separator was already at the right spot you could just use the += shiftValue10 on the separator frame to push both down.

     

  11. Hi Katie, if we want to have the system handle the page count coming from the data then I think you need an OnRecordStart that looks like this:

    FusionPro.Composition.repeatRecordCount = Field("PageCount");
    
    if (FusionPro.Composition.repeatRecordNumber == Field("PageCount"))
      FusionPro.Composition.SetBodyPageUsage("Slipsheet", true);


     
    This assumes the job has a field called PageCount with how many pages to have and there is a page called Slipsheet that is unused and after the notepad page definition. (So you'll have 2 pages in your PDF template - the notepad page and a Slipsheet page that is marked as unused.) This slip sheet will be turned on at the last page of the notepad, so it should be after the notepad page.

     

    Does that help?

  12. Can you post what version of the software you're using, whether PC or Mac? If you compose to PDF what warning /error messages do you get?

    If you are running version 13.0.1 on Mac, I recommend you upgrade to 13.0.2.

    On the advanced tab of the composition options dialog is a setting to limit the output to Latin-1 (or MacEncoding). Try turning that on/off to see if it matters.

×
×
  • Create New...