Create image thumbnail later

Hello, I've a script which import images from a server and link it in InDesign also some IDMS files from text source and put it in InDesign. The problem here is this file may have up to 1500 images with very large in size that takes lots of time to generate the InDesign file, So my question from this forum is:
Can we make image import process speedy ?
Can we generate image thumbnail later by script so that quickly it generate InDesign file and later in background keep importing the images ?
If yes, then can some tell the way to do that ?
If no, is there any other way to achieve this goal?
Note: Basically this script I'm using in an InDesign flex extension.
Thanks
Mac

@Mac – did you experiment with the preferences of InDesign?
By scripting something around this:
app.displayPerformancePreferences.defaultDisplaySettings = ViewDisplaySettings.OPTIMIZED;
app.displayPerformancePreferences.ignoreLocalSettings = true;
var myLayoutWindows = app.documents[0].layoutWindows.everyItem();
myLayoutWindows.overprintPreview = false;
myLayoutWindows.screenMode = ScreenModeOptions.PREVIEW_OFF;
myLayoutWindows.viewDisplaySetting = ViewDisplaySettings.OPTIMIZED;
Also, try to "optimize" the inital definition for the "OPTIMIZED" view display settings without a script (I could not find a hook in scripting to change these) by pulling the switch for raster graphics, vector graphics and transparency to the left. No antializing, greek text for type above 30 pt.).
Don't know if that will help…
If you do "optimization" right, the placed graphics will be shown as gray boxes with an "x" in it:
Until you change the view settings to "High Quality" or "Typical".
Uwe

Similar Messages

  • Creating image thumbnail and loading to image control

    Hi All
    Is there way of creating thumbnail of image in flex 3.0 desktop app AIR of any size (2 mb ,etc) and then loading it to the image control
    please help....
    Thanks

    Instead of using FileOutputStream to output your thumbnail to the filesystem, use the ServletOutputStream returned by ServletResponse.getOutputStream() to stream your data back to the browser client. Make sure you set your MIME type appropriately using ServletResponse.setContentType() so the browser knows what kind of data it is receiving and can handle it appropriately.

  • Creating image thumbnails

    Hello. I am pretty new to iWeb, and I have a question. I am creating a website, and I want to post pictures, but use thumbnails so that the user can click the image and it would either pop out bigger, or open in a new tab.
    Thanks

    Welcome to the Apple Discussions. You can use the method in this demo page: Opening Item in a New, Precisely Sized Window or the Fancy Zoom method (the zoomed image would be the large version of the thumbnail version) on this demo page: Fancy Zoom.
    There are a number of java based options also. The Postcard them of Flash Album Exporter, an iPhoto plugin is one: Postcard .
    Jalbum is a free slideshow creator using java script and has over 100 themes/skins. One might have what you want. An example of two themes can be seen here: Jalbum .
    Finally, there's a Mouse Over method. This demo page has such a presentation and the code used: MouseOver .
    OT

  • Creating a thumbnail replaces original image

    Hi,
    Currently fighting with Intermedia on a 9i server trying to create image thumbnails. My DBA's are still setting up the EXPROC for processing JPEG images so I'm working with PNG and BMPs at the moment. I'm use the following stored procedure:
    PROCEDURE CREATE_BUDDY_THUMBNAIL (BID IN NUMBER) IS
        Thumb ORDSYS.ORDimage;
        Pic ORDSYS.ORDimage;
    BEGIN
      SELECT picture INTO Pic
      FROM BUDDY
      WHERE BUDDY_ID = BID
      FOR UPDATE;
      Thumb := ORDSYS.ORDImage.init();
      IF Pic IS NOT NULL THEN
        Pic.processCopy('maxScale=80 80', Thumb);
        UPDATE BUDDY SET
        thumbnail = Thumb
        WHERE BUDDY_ID = BID;
      END IF;
    END;Which is all well and good the thumbnail gets created if I comment out the line "Thumb := ORDSYS.ORDImage.init();" and make Thumb := Picture before doing anything but it also ruins the orignal image - seems to make it the same size as the original but with the data of the thumbnail.
    As is, the code generates this error (#13 is the processCopy line):
    ERROR at line 1:
    ORA-29400: data cartridge error
    IMG-00710: unable to write to destination image
    ORA-06512: at "ORDSYS.ORDIMG_PKG", line 525
    ORA-06512: at "ORDSYS.ORDIMAGE", line 59
    ORA-06512: at "CMS_KIOSK.CREATE_BUDDY_THUMBNAIL", line 13
    ORA-06512: at line 1
    I'm assuming/hoping Christian is having a similar problem here: How to create ordsys.ordimage object? - I've used the ini() line from his example. Help appreciated, was hoping this would be simple as...

    Hi,
    if you want to store your thumbnail in your database you should try to bind thumb to the database object directly. It should look something like this:
    PROCEDURE CREATE_BUDDY_THUMBNAIL (BID IN NUMBER) IS
    Thumb ORDSYS.ORDimage;
    Pic ORDSYS.ORDimage;
    BEGIN
    SELECT picture, thumbnail INTO Pic, Thumb
    FROM BUDDY
    WHERE BUDDY_ID = BID
    FOR UPDATE;
    IF Pic IS NOT NULL THEN
    Pic.processCopy('maxScale=80 80', Thumb);
    UPDATE BUDDY SET
    thumbnail = Thumb
    WHERE BUDDY_ID = BID;
    END IF;
    END;
    Thumbnail should already be initialized by ORDImage.init(), when you call the procedure. I tried code like this using java and it worked fine for me. So it should work in PL/SQL too.
    But it's not a solution for my problem. :(

  • Creating square thumbnails from both landscape & portrait images

    I make regular use of a Flash image gallery that requires me to provide small square 50 x 50px thumbnails whatever the shape of the original images. The only solution I have found so far is to first manually sort my original images into landscape and portrait folders and then run a different action on each folder to create the thumbnails.
    Is there any way to design an action that would work equally well on both landscape and portrait images?
    David

    he will do a centered 1;1
    David C Anderson wrote:
    JJMack,
    I am confused. You said that your CraftedActions package has a plug-in script you can use in Actions to do a 1:1 center crop and you said the name of the relevant action was AspectRatioSelection. I have loaded CraftedActions into Actions but cannot see anything called AspectRatioSelection. Please clarify.
    There is no Action for cropping. There are 12 scripts in the package *.jsx they go into Photoshop's scripting Path. Like PSversion\presets\scripts\
    On of the scripts has the name AspectRatioSelection.jsx it is a Plug-in script it does not crop it can set AspectRatioSelection and make AspectRatioPath they can be rectangular or ellipse. You can record a Cropping action using it.  Takes two steps.
    Step 1 menu File>Automate>Aspect Ratio Selection...  in the dialog set it like this
    Follow that step with Step 2 menu Image>Crop
    That will do the largest 1:1 centered crop possible. You can follow that with a Image Size or Automate fit image and set width and height to 50PX
    That would look like this note red checks I turned off the fit image step

  • Creating photo thumbnails?

    I hate to use the "F" word, but in FrontPage I could use
    Ctrl-T to change a photo on a page to a thumbnail, and it created
    the link to the original.
    How do I do this in DW CS3? I did Commands/Create Web Photo
    Album, but that wants Fireworks. I can't afford to by FW now. Isn't
    there a simpler way other than manuall creating the Thumbnails and
    linking them to the originals?
    I hate that I may have lost a function I used often in FP.
    Gary

    "Joris van Lier" <[email protected]> wrote:
    >>"Clancy" <[email protected]> wrote
    >> PHP has very good functions for manipulating photos,
    including producing
    >> thumbnails,
    >
    >Please do preferably with code examples that we can turn
    into
    >ServerBehaviors :)
    The image manipulation facilities are a bit slow (6-10
    seconds per set of 3
    images), so I only use them to set up the working images on
    my own PC, before I
    upload them. I haven't tried running them on the remote
    server. $quality is a
    constant which determines the quality and degree of
    compression of the new
    image. 100 gives no compression, 80 gives a good-quality
    image of reasonable
    size, but anything much below 70 gives very obvious "ringing"
    on things like
    telegraph poles against a blue sky.
    I don't know about 'ServerBehaviors', so you'll have to work
    that out :)
    Notice that in my example procedure I reset the time limit
    for every new image.
    I normally set this to 1, so I don't wait foreverwhen I write
    the inevitable
    infinite loop, but this way I don't time out halfway through,
    but I don't wait
    for ever if I do write an infinite loop.
    These functions worked for me with php set up as instructed
    by David Powers in
    his book "PHP for Dreamweaver 8".
    To get the EXIF information function working I had to
    uncomment the lines:
    extension=php_mbstring.dll (already included)
    extension=php_exif.dll
    in the file php.ini
    A. Shrink image.
    <?php
    // Set up $orig_image as full path/file name of image to be
    reduced
    // eg Flowers/Orchids/Diuris/DSCN1055.JPG
    // 1. Create an image object (presumably a bit map?) from it.
    $wkg_image = imagecreatefromjpeg($orig_image); // Working
    copy of original
    image
    // 2. Get original size
    $size = getimagesize ($orig_image); // Get dimensions
    // 3. Decide new dimensions (the magic numbers used here are
    explained in the
    example below)
    $height = $scale[$k][0]; $width = (int) ($height*$ratio);
    // 4. Decide where to put target. Again full path/filename
    $target = $path.$image;
    // 5. Create a temporary image object the size of the new
    image.
    $temp_image = imagecreatetruecolor($width, $height);
    // 6. Resample the image into the new object (if you replace
    the zeroes with
    offsets you can specify a portion of the image to be sampled
    -- I haven't tried
    this)
    imagecopyresampled($temp_image, $wkg_image, 0, 0, 0, 0,
    $width, $height,
    $size[0], $size[1]);
    // 7. Convert it to JPEG
    imagejpeg($temp_image, $target, $quality);
    // 8. Discard the temporary images.
    imagedestroy($temp_image);
    imagedestroy($wkg_image);
    // Done!
    B. Procedure to list all EXIF (image header data). I'm not
    too sure how this
    works, but it does! (Comes from the manual.)
    // Specify source file
    $old_image = 'Dev/Original/DSCN0389.jpg';
    echo '<p>T:153. Trying to read data from
    '.$old_image.'</p>';
    $exif = exif_read_data($old_image, 0, true);
    echo "T:157 '.$old_image.':<br />\n";
    foreach ($exif as $key => $section)
    foreach ($section as $name => $val)
    echo "$key.$name: $val<br />\n";
    C. Actual procedure to scan directory, get updated files, and
    generate large,
    medium and thumbnail images meeting specific size
    constraints. (Large fits
    nicely on 1280*1024 screen, Medium on 1024*768 screen.)
    // (This is not written as a procedure, just included when
    needed. It is
    included purely to show you an actual working example using
    these functions)
    // 23/10/07 Created
    $get_img = array (false, false, false);//
    $changed = false;
    $quality = array (80, 80, 75);
    $img_dirs = array ( 'Large/', 'Images/', 'Thumbs/' );
    $pattern = ".jpg"; // I only want .JPG images
    // Apply different algorithms according to shape of image and
    required size.
    $limits = array (
    0 => array ( 1.05, 1.61 ), // Large image
    1 => array ( 1.0, 1.725 ), // Normal image
    2 => array ( 0.1, 1.125 )); // Thumb
    $scale = array (
    0 => array ( 830, 770, 1240), // Maximum dimensions
    (Height for portrait, then
    landscape, then width for superwide)
    1 => array ( 610, 550, 950),
    2 => array ( 160, 160, 180));
    // See which sizes have been requested.
    if (array_key_exists('ck_l', $_POST)) { $get_img[0] = true; }
    //echo
    '<p>Im_2_22: $get_img[0] = true</p>';}
    if (array_key_exists('ck_m', $_POST)) { $get_img[1] = true; }
    //echo
    '<p>Im_2_23: $get_img[1] = true</p>'; }
    if (array_key_exists('ck_t', $_POST)) { $get_img[2] = true; }
    //echo
    '<p>Im_2_24: $get_img[2] = true</p>'; }
    // Abandon if 'Cancel' set.
    if (array_key_exists('cancel', $_POST))
    $edit_data['action'] = 0; $edit_data['ind_act'] = 0;
    $changed = 0;
    else
    $dir = $edit_data['f_path'].'Original';
    //echo ('<p>Im_2_34: Trying to open
    '.$dir.'</p>');
    f (is_dir($dir))
    if ($dh = opendir($dir))
    //echo "<p>Im_2_39: ".$dir." opened OK.</p>";
    while (($image = readdir ($dh)) !== false)
    $orig_image = $dir.'/'.$image;
    if (stristr ($orig_image, $pattern))
    //echo "<p>Im_2_46: Next image =
    ".$orig_image."</p>";
    $src_date = date ("ymdhis",filectime($orig_image)); // Get
    date file
    updated
    set_time_limit(4);
    // Got an image. K = 0 (large), 1 (normal), 2 (thumb)
    // See if already present, and later version
    $wanted = false;
    $k = 0; while (($k < 3) && (!$wanted))
    $w[$i] = false;
    if ($get_img[$k]) // Want this size?
    $target = $edit_data['f_path'].$img_dirs[$k].$image;
    if ((!file_exists($target) || (date
    ("ymdhis",filectime($target))
    <= $src_date)))
    $wanted = true; $w[$k] = true;
    $k++;
    if ($wanted)
    $wkg_image = imagecreatefromjpeg($orig_image); // Working
    copy of
    original image
    $size = getimagesize ($orig_image); // Get dimensions
    $ratio = $size[0]/$size[1]; // Calc ratio of width to height
    echo '<p>Im_2_72: Size = '.$size[0].', '.$size[1].',
    '.$ratio.'</p>';
    $k = 0; while ($k < 3)
    if ($w[$k]) // Want this size?
    if ($ratio > $limits[$k][0])
    if ($ratio > $limits[$k][1])
    $width = $scale[$k][2]; $height = (int) ($width/$ratio);
    else
    $height = $scale[$k][1]; $width = (int) ($height*$ratio);
    else
    $height = $scale[$k][0]; $width = (int) ($height*$ratio);
    $target = $edit_data['f_path'].$img_dirs[$k].$image;
    echo '<p>Im_2_76: $k = '.$k.', Width = '.$width.',
    Height = '.$height.', orig:
    '.$size[0].' * '.$size[1].', Target = '.$target.'</p>';
    $temp_image = imagecreatetruecolor($width, $height);
    imagecopyresampled($temp_image, $wkg_image, 0, 0, 0, 0,
    $width, $height,
    $size[0], $size[1]);
    imagejpeg($temp_image, $target, $quality[$k]);
    imagedestroy($temp_image);
    $k++;
    imagedestroy($wkg_image);
    $changed = 1; // Magic numbers for my program
    $edit_data['action'] = 0; // Flag file written correctly
    $edit_data['ind_act'] = 2; // Generate index logical next
    step
    ?>
    Clancy

  • Unable to create image buffer after RAM preview

    Running into an odd and frustrating error. Built a comp using the new Ray-traced 3D renderer and now I'm regretting being an early adopter big time with all the problems I've been encountering with it. The latest comes whenever I do a longer RAM preview in an attempt to watch the whole duration of my comp. It will get to about 170 frames or so, at which point I've interrupted by pressing spacebar because I don't need to see all the way to the end of my work area (around 220 frames). It'll play the RAM preview back fine, and even loop it, but as soon as I stop playback, I get this error message: "After Effects warning: Unable to create image buffer." There's only one button: "okay" and as soon as I click it the same error pops up again and it will never go away, forcing me to close AE from the task manager. I've taken to saving before every RAM preview like I used to do with Flash before previewing my buggy swfs for fear I'll lose all my work after previewing. Any ideas about what might be causing this?
    Some more details about my comp:
    1920x1080 @ 29.97
    Ray-traced 3D
    About 70 3D layers (I'm guessing this is my downfall - new renderer not designed for this many layers?)
    Running Windows 7 Professional
    i7 2600K
    32GB RAM
    2x GTX 570 video cards running latest driver (301.42, CUDA 4.2.1)
    508GB free on my 2TB internal drive where the project and cache lives
    From my GPU info window in case it's useful:
    Fast Draft:
    Available
    Texture Memory:
    600.00 MB
    Ray-tracing:
    GPU
    OpenGL
    Vendor:
    NVIDIA Corporation
    Device:
    GeForce GTX 570/PCIe/SSE2
    Version:
    3.0.0
    Total Memory:
    1.20 GB
    Shader Model:
    4.0 or later
    CUDA
    Driver Version:
    4.2
    Devices:
    2 (GeForce GTX 570, GeForce GTX 570)
    Current Usable Memory:
    1.04 GB (at application launch)
    Maximum Usable Memory:
    1.25 GB

    Yeah, some buffer is very likely not flushing when you interrupt the preview and then there is no more memory on the graphics hardware. Consider setting the work area and your preview options to use only the work area. if it finishes the preview "correctly", it may not suffer the issue. Beyond that - raytracing doesn't/ shouldn't care about the number of items. The math is such, that it makes no difference whether you render a million polygons or just one. Of course there are still limitations due to the GPU dependency, but I doubt you ever truly exhaust the cards' geometry buffers. Compared to pixel data that is a small amount...
    Mylenium

  • Icon does not appear in the image thumbnail in Bridge

    After processing a camera raw file using the Camera Raw plug-in, an icon does not appera in the image thumbnail in Bridge. Using raw plug-in created april 19 2007 in windows vista. The same CS2 program does create the icon on another computer using Windoes XP. Jim

    Please check your top toolbar left side, you should see a small arrow icon to expend the toolbar, located near the Tools option
    (Ignore the location side in the sample picture, it should be the opposite for your language )
    If you cannot locate the HP Smart Web Printing there either, Click Tools > Manage Addons
    and make sure the HP Smart Web Printing addon is enabled,
    Say thanks by clicking the Kudos thumb up in the post.
    If my post resolve your problem please mark it as an Accepted Solution

  • Performance advice required - creating images for a scrolling list view on Android

    This is a question about how best to manage thumbnail images in an list view style app written in Actionscript 3 for Android.
    I am building an app that uses a list view control to show lists of data.  As each list item appears on screen during a scroll through the list I create a thumbnail image to display in the list item cell. 
    Currently I am embedding the jpg thumbnails in actionscript and using mx.core.bitmapasset to get bitmaps on the fly.  On a live device this is unfortunately slowing things down - the smooth scrolling list jerks every time a new cell appears on screen.
    There are probably going to be 500+ thumbnails but a list will only ever have about 150 items in it at any one time, of which only about 6 or 7 are onscreen at the same time.  The list view control is one that I have created myself in actionscript but I am pretty sure the thumbnail creation is the cause of the slowdown.  If I take out thumbnails the scrolling is smooth.  If I reuse the same thumbnail across all cells then scrolling is smooth too.  The component reuses cells as they disappear off one end of the list so there isn't much creation of objects going on.
    I am running this in debug so it might be possible that in release things are better (maybe?).
    Does anyone have any advice on how best to approach this problem of getting jpg assets available quickly?

    Hi,
    I think you can use ContentCache here. See http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/spark/core/ContentCache .html. You need to create an instance of ContentCache and set the contentLoader property of your Bitmap object to this instance. You can control the number of cachedEntries by setting maxCacheEntries. The tutorial by Mihai Corlan http://corlan.org/?p=3106 shows how you can use it. I hope you find it useful.
    Thanks,
    Sanika

  • Create images with dynamic width from 3 images each (left/center/right-part)

    Hello,
    i want to employ a script to create images of dynamic width for me. The whole process shall base on different sized sets of images, which contain a left-image, a right-image and a center-image. The desired width for the different cases shall be reached by duplicating the center-image between the two outer images and placing those images next to each other until the image extends to desired width.
    The layers importet into Photoshop shall be importet as smart-layers (which i already solved).
    Has anyone done something similar already and could give me some useful hints on that issue ?
    I have come up to this until now:
    #target Photoshop
    // =========================== Opens a new document and asks for dimensions ============================
    var myLayerset = File.openDialog ("Select the set of images you want to use!", "*.png",true)
    var myName = prompt("How do you want to call the document?"); // askes for document name
    var width =  prompt("Please insert width for the output here!", ""); // askes for desired width
    var height = prompt("Please insert height for the output here!", ""); //askes for desired height
    var docName = myName +".psd"
    var idMk = charIDToTypeID( "Mk  " );
        var desc3 = new ActionDescriptor();
        var idNw = charIDToTypeID( "Nw  " );
            var desc4 = new ActionDescriptor();
            var idNm = charIDToTypeID( "Nm  " );
            desc4.putString( idNm, """Wunschname""" );
            var idMd = charIDToTypeID( "Md  " );
            var idRGBM = charIDToTypeID( "RGBM" );
            desc4.putClass( idMd, idRGBM );
            var idWdth = charIDToTypeID( "Wdth" );
            var idRlt = charIDToTypeID( "#Rlt" );
            desc4.putUnitDouble( idWdth, idRlt, width );
            var idHght = charIDToTypeID( "Hght" );
            var idRlt = charIDToTypeID( "#Rlt" );
            desc4.putUnitDouble( idHght, idRlt, height );
            var idRslt = charIDToTypeID( "Rslt" );
            var idRsl = charIDToTypeID( "#Rsl" );
            desc4.putUnitDouble( idRslt, idRsl, 72.000000 );
            var idpixelScaleFactor = stringIDToTypeID( "pixelScaleFactor" );
            desc4.putDouble( idpixelScaleFactor, 1.000000 );
            var idFl = charIDToTypeID( "Fl  " );
            var idFl = charIDToTypeID( "Fl  " );
            var idTrns = charIDToTypeID( "Trns" );
            desc4.putEnumerated( idFl, idFl, idTrns );
            var idDpth = charIDToTypeID( "Dpth" );
            desc4.putInteger( idDpth, 8 );
            var idprofile = stringIDToTypeID( "profile" );
            desc4.putString( idprofile, """sRGB IEC61966-2.1""" );
        var idDcmn = charIDToTypeID( "Dcmn" );
        desc3.putObject( idNw, idDcmn, desc4 );
    executeAction( idMk, desc3, DialogModes.NO );
    //==============================================save document================================================
    var idsave = charIDToTypeID( "save" );
        var desc4 = new ActionDescriptor();
        var idAs = charIDToTypeID( "As  " );
            var desc5 = new ActionDescriptor();
            var idmaximizeCompatibility = stringIDToTypeID( "maximizeCompatibility" );
            desc5.putBoolean( idmaximizeCompatibility, true );
        var idPhtthree = charIDToTypeID( "Pht3" );
        desc4.putObject( idAs, idPhtthree, desc5 );
        var idIn = charIDToTypeID( "In  " );
        desc4.putPath( idIn, new File( "C:\\Users\\ target folder goes here" + docName ) );
        var idDocI = charIDToTypeID( "DocI" );
        desc4.putInteger( idDocI, 308 );
        var idsaveStage = stringIDToTypeID( "saveStage" );
        var idsaveStageType = stringIDToTypeID( "saveStageType" );
        var idsaveSucceeded = stringIDToTypeID( "saveSucceeded" );
        desc4.putEnumerated( idsaveStage, idsaveStageType, idsaveSucceeded );
    executeAction( idsave, desc4, DialogModes.NO );
    //========================================================================================================
    for (var i = 0; i < myLayerset.length; i++) {
    if (myLayerset[i] instanceof File && myLayerset[i].hidden == false) {
    // ======================================================= opens selected images as smart objects====================
    var idOpn = charIDToTypeID( "Opn " );
        var desc1 = new ActionDescriptor();
        var idnull = charIDToTypeID( "null" );
       desc1.putPath( idnull, myLayerset[i]);
        var idsmartObject = stringIDToTypeID( "smartObject" );
        desc1.putBoolean( idsmartObject, true );
    executeAction( idOpn, desc1, DialogModes.NO );
    //===================================duplicates opened layer into created document========================================
    var idDplc = charIDToTypeID( "Dplc" );
        var desc144 = new ActionDescriptor();
        var idnull = charIDToTypeID( "null" );
            var ref135 = new ActionReference();
            var idLyr = charIDToTypeID( "Lyr " );
            var idOrdn = charIDToTypeID( "Ordn" );
            var idTrgt = charIDToTypeID( "Trgt" );
            ref135.putEnumerated( idLyr, idOrdn, idTrgt );
        desc144.putReference( idnull, ref135 );
        var idT = charIDToTypeID( "T   " );
            var ref136 = new ActionReference();
            var idDcmn = charIDToTypeID( "Dcmn" );
            ref136.putName( idDcmn, docName); 
        desc144.putReference( idT, ref136 );
        var idVrsn = charIDToTypeID( "Vrsn" );
        desc144.putInteger( idVrsn, 5 );
    executeAction( idDplc, desc144, DialogModes.NO );
    // ======================================================= close tab without saving ==========
    var idCls = charIDToTypeID( "Cls " );
        var desc156 = new ActionDescriptor();
        var idSvng = charIDToTypeID( "Svng" );
        var idYsN = charIDToTypeID( "YsN " );
        var idN = charIDToTypeID( "N   " );
        desc156.putEnumerated( idSvng, idYsN, idN );
    executeAction( idCls, desc156, DialogModes.NO );

    I adapted a Script somewhat, so you may give this a test.
    But it uses the open file so you would have to adapt it further.
    // arranges the selected jpg, tif, psd in line;
    // gutters may be irregular due to rounding effects;
    // thanks to michael l hale and muppet mark;
    // for mac and CS6;
    // 2014, use it at your own risk;
    #target photoshop
    if (app.documents.length == 0) {
              var myDocument = app.documents.add(UnitValue (300, "mm"), UnitValue (50, "mm"), 300, "new", NewDocumentMode.RGB, DocumentFill.TRANSPARENT)
    else {myDocument = app.activeDocument};
    // set to pixels;
    var originalRulerUnits = app.preferences.rulerUnits;
    app.preferences.rulerUnits = Units.PIXELS;
    var theArray = [0, 0, myDocument.width, myDocument.height];
    // select files;
    if ($.os.search(/windows/i) != -1) {var theFiles = File.openDialog ("please select files", '*.jpg;*.tif;*.pdf;*.psd', true)}
    else {var theFiles = File.openDialog ("please select exactly three files", getFiles, true)};
    // do the arrangement
    if (theFiles) {placeInLines (myDocument, theFiles, theArray)}
    app.preferences.rulerUnits = originalRulerUnits;
    ////// function to place images in lines //////
    function placeInLines (myDocument, theFiles, theArray) {
    theFiles.sort();
    // fit on screen;
    var idslct = charIDToTypeID( "slct" );
    var desc64 = new ActionDescriptor();
    var idnull = charIDToTypeID( "null" );
    var ref44 = new ActionReference();
    var idMn = charIDToTypeID( "Mn  " );
    var idMnIt = charIDToTypeID( "MnIt" );
    var idFtOn = charIDToTypeID( "FtOn" );
    ref44.putEnumerated( idMn, idMnIt, idFtOn );
    desc64.putReference( idnull, ref44 );
    executeAction( idslct, desc64, DialogModes.NO );
    // change pref;
    var originalRulerUnits = app.preferences.rulerUnits;
    app.preferences.rulerUnits = Units.PIXELS;
    setToAccelerated();
    app.togglePalettes();
    var check = turnOffRescale ();
    // create the arrangement;
    if (theFiles.length > 0 && theFiles.length == 3) {
    myDocument.activeLayer = myDocument.layers[0];
    // create masked group;
    var theGroup = myDocument.layerSets.add();
    theGroup.name = "arrangement";
    // determine the array’s values;
    var areaWidth = theArray[2] - theArray[0];
    var areaHeight = theArray[3] - theArray[1];
    var theDocResolution = myDocument.resolution;
    var areaRelation = areaHeight / areaWidth;
    // center of placed non-pdf images;
    var centerX = Number(myDocument.width / 2);
    var centerY = Number(myDocument.height / 2);
    // suppress dialogs;
    var theDialogSettings = app.displayDialogs;
    app.displayDialogs = DialogModes.NO;
    var pdfSinglePages = new Array;
    var nonPDFs = new Array;
    var theDimPDFs = new Array;
    var theLength = 0;
    // collect the files’ measurements;
    var theDimensions = new Array;
    var theLengths = new Array;
    // array to collect both files and placed pdf-pages;
    var theseFiles = new Array;
    var theLength = 0;
    // collect the files’ measurements;
    for (var o = 0; o < theFiles.length; o++) {
        var thisFile = theFiles[o];
              theseFiles.push(thisFile);
              var theDim = getDimensions(thisFile);
              theDimensions.push(theDim);
              theRelativeWidth = 100 / theDim[1] * theDim[0];
              theLength = theLength + theRelativeWidth;
    // reset dialogmodes;
    app.displayDialogs = DialogModes.ERROR;
    // if three files;
    if (theseFiles.length == 3) {
    // create the layers;
    var theNumber = 0;
    var theAdded = 0;
    var y = areaHeight / 2;
    // add placed image’s width;
    var thisLineWidth = 0 + theAdded;
    var theLastFactor = Number (Number(myDocument.height) / theDimensions[2][1] * theDimensions[2][2] / theDocResolution * 100);
    var theLastWidth = Math.round(theDimensions[2][0] * theLastFactor / 100 * theDocResolution / theDimensions[2][2]);
    // place the files;
    for (var x = 0; x < 3; x++) {
    var theNumber = x;
    var thisFile = theseFiles[theNumber];
    var theFactor = Number (Number(myDocument.height) / theDimensions[theNumber][1] * theDimensions[theNumber][2] / theDocResolution * 100);
    var theNewWidth = Math.round(theDimensions[theNumber][0] * theFactor / 100 * theDocResolution / theDimensions[theNumber][2]);
    var offsetX = theNewWidth / 2 + thisLineWidth - centerX + theArray[0];
    var offsetY = y - centerY + theArray[1];
    var theLayer = placeScaleFile (thisFile, offsetX, offsetY, theFactor, theFactor);
    myDocument.activeLayer.move(theGroup, ElementPlacement.PLACEATBEGINNING);
    thisLineWidth = thisLineWidth + theNewWidth;
    // duplicate the middle one;
    if (theNumber == 1) {
              while (thisLineWidth < myDocument.width - theLastWidth) {
                        theLayer = duplicateAndOffset (theLayer, theNewWidth, 0);
                        thisLineWidth = thisLineWidth + theNewWidth;
    // reset;
    app.togglePalettes();
    turnOnRescale (check);
    app.preferences.rulerUnits = originalRulerUnits;
    ////// playback to accelerated //////
    function setToAccelerated () {
              var idsetd = charIDToTypeID( "setd" );
              var desc1 = new ActionDescriptor();
              var idnull = charIDToTypeID( "null" );
                        var ref1 = new ActionReference();
                        var idPrpr = charIDToTypeID( "Prpr" );
                        var idPbkO = charIDToTypeID( "PbkO" );
                        ref1.putProperty( idPrpr, idPbkO );
                        var idcapp = charIDToTypeID( "capp" );
                        var idOrdn = charIDToTypeID( "Ordn" );
                        var idTrgt = charIDToTypeID( "Trgt" );
                        ref1.putEnumerated( idcapp, idOrdn, idTrgt );
              desc1.putReference( idnull, ref1 );
              var idT = charIDToTypeID( "T   " );
                        var desc2 = new ActionDescriptor();
                        var idperformance = stringIDToTypeID( "performance" );
                        var idperformance = stringIDToTypeID( "performance" );
                        var idaccelerated = stringIDToTypeID( "accelerated" );
                        desc2.putEnumerated( idperformance, idperformance, idaccelerated );
              var idPbkO = charIDToTypeID( "PbkO" );
              desc1.putObject( idT, idPbkO, desc2 );
              executeAction( idsetd, desc1, DialogModes.NO );
    ////// get psds, tifs and jpgs from files //////
    function getFiles (theFile) {
        if (theFile.name.match(/\.(jpg|tif|psd|pdf|)$/i)) {
            return true
    ////// place //////
    function placeScaleFile (file, xOffset, yOffset, theScale) {
    // =======================================================
    var idPlc = charIDToTypeID( "Plc " );
        var desc5 = new ActionDescriptor();
        var idnull = charIDToTypeID( "null" );
        desc5.putPath( idnull, new File( file ) );
        var idFTcs = charIDToTypeID( "FTcs" );
        var idQCSt = charIDToTypeID( "QCSt" );
        var idQcsa = charIDToTypeID( "Qcsa" );
        desc5.putEnumerated( idFTcs, idQCSt, idQcsa );
        var idOfst = charIDToTypeID( "Ofst" );
            var desc6 = new ActionDescriptor();
            var idHrzn = charIDToTypeID( "Hrzn" );
            var idPxl = charIDToTypeID( "#Pxl" );
            desc6.putUnitDouble( idHrzn, idPxl, xOffset );
            var idVrtc = charIDToTypeID( "Vrtc" );
            var idPxl = charIDToTypeID( "#Pxl" );
            desc6.putUnitDouble( idVrtc, idPxl, yOffset );
        var idOfst = charIDToTypeID( "Ofst" );
        desc5.putObject( idOfst, idOfst, desc6 );
        var idWdth = charIDToTypeID( "Wdth" );
        var idPrc = charIDToTypeID( "#Prc" );
        desc5.putUnitDouble( idWdth, idPrc, theScale );
        var idHght = charIDToTypeID( "Hght" );
        var idPrc = charIDToTypeID( "#Prc" );
        desc5.putUnitDouble( idHght, idPrc, theScale );
        var idLnkd = charIDToTypeID( "Lnkd" );
        desc5.putBoolean( idLnkd, true );
    executeAction( idPlc, desc5, DialogModes.NO );
    return myDocument.activeLayer;
    ////// open pdf //////
    function openPDF (theImage, x) {
    // define pdfopenoptions;
    var pdfOpenOpts = new PDFOpenOptions;
    pdfOpenOpts.antiAlias = true;
    pdfOpenOpts.bitsPerChannel = BitsPerChannelType.EIGHT;
    pdfOpenOpts.cropPage = CropToType.TRIMBOX;
    pdfOpenOpts.mode = OpenDocumentMode.CMYK;
    pdfOpenOpts.resolution = 10;
    pdfOpenOpts.suppressWarnings = true;
    pdfOpenOpts.usePageNumber  = true;
    // suppress dialogs;
    var theDialogSettings = app.displayDialogs;
    app.displayDialogs = DialogModes.NO;
    pdfOpenOpts.page = x;
    var thePdf = app.open(theImage, pdfOpenOpts);
    thePdf.close(SaveOptions.DONOTSAVECHANGES);
    // reset dialogmodes;
    app.displayDialogs = theDialogSettings;
    ////// turn off preference to scale placed image //////
    function turnOffRescale () {
    // determine if the resize prefernce is on;
    var ref = new ActionReference();
    ref.putEnumerated( charIDToTypeID("capp"), charIDToTypeID("Ordn"), charIDToTypeID("Trgt") );
    var appDesc = executeActionGet(ref);
    var prefDesc = appDesc.getObjectValue(charIDToTypeID( "GnrP" ));
    var theResizePref = prefDesc.getBoolean(stringIDToTypeID( "resizePastePlace" ));
    // turn off resize image during place;
    if (theResizePref == true);{
    // =======================================================
    var idsetd = charIDToTypeID( "setd" );
        var desc12 = new ActionDescriptor();
        var idnull = charIDToTypeID( "null" );
            var ref4 = new ActionReference();
            var idPrpr = charIDToTypeID( "Prpr" );
            var idGnrP = charIDToTypeID( "GnrP" );
            ref4.putProperty( idPrpr, idGnrP );
            var idcapp = charIDToTypeID( "capp" );
            var idOrdn = charIDToTypeID( "Ordn" );
            var idTrgt = charIDToTypeID( "Trgt" );
            ref4.putEnumerated( idcapp, idOrdn, idTrgt );
        desc12.putReference( idnull, ref4 );
        var idT = charIDToTypeID( "T   " );
            var desc13 = new ActionDescriptor();
            var idresizePastePlace = stringIDToTypeID( "resizePastePlace" );
            desc13.putBoolean( idresizePastePlace, false );
        var idGnrP = charIDToTypeID( "GnrP" );
        desc12.putObject( idT, idGnrP, desc13 );
    executeAction( idsetd, desc12, DialogModes.NO );
    return theResizePref
    ////// turn on preference to scale plced image //////
    function turnOnRescale (check) {
    if (check == true) {
    // =======================================================
    var idsetd = charIDToTypeID( "setd" );
        var desc14 = new ActionDescriptor();
        var idnull = charIDToTypeID( "null" );
            var ref5 = new ActionReference();
            var idPrpr = charIDToTypeID( "Prpr" );
            var idGnrP = charIDToTypeID( "GnrP" );
            ref5.putProperty( idPrpr, idGnrP );
            var idcapp = charIDToTypeID( "capp" );
            var idOrdn = charIDToTypeID( "Ordn" );
            var idTrgt = charIDToTypeID( "Trgt" );
            ref5.putEnumerated( idcapp, idOrdn, idTrgt );
        desc14.putReference( idnull, ref5 );
        var idT = charIDToTypeID( "T   " );
            var desc15 = new ActionDescriptor();
            var idresizePastePlace = stringIDToTypeID( "resizePastePlace" );
            desc15.putBoolean( idresizePastePlace, true );
        var idGnrP = charIDToTypeID( "GnrP" );
        desc14.putObject( idT, idGnrP, desc15 );
    executeAction( idsetd, desc14, DialogModes.NO );
    ////// convert to so if not one aready //////
    function duplicateAndOffset (theLayer, theXOffset, theYOffset) {
    app.activeDocument.activeLayer = theLayer;
    // =======================================================
    var idcopy = charIDToTypeID( "copy" );
        var desc9 = new ActionDescriptor();
        var idnull = charIDToTypeID( "null" );
            var ref5 = new ActionReference();
            var idLyr = charIDToTypeID( "Lyr " );
            var idOrdn = charIDToTypeID( "Ordn" );
            var idTrgt = charIDToTypeID( "Trgt" );
            ref5.putEnumerated( idLyr, idOrdn, idTrgt );
        desc9.putReference( idnull, ref5 );
        var idT = charIDToTypeID( "T   " );
            var desc10 = new ActionDescriptor();
            var idHrzn = charIDToTypeID( "Hrzn" );
            var idRlt = charIDToTypeID( "#Pxl" );
            desc10.putUnitDouble( idHrzn, idRlt, theXOffset );
            var idVrtc = charIDToTypeID( "Vrtc" );
            var idRlt = charIDToTypeID( "#Pxl" );
            desc10.putUnitDouble( idVrtc, idRlt, theYOffset );
        var idOfst = charIDToTypeID( "Ofst" );
        desc9.putObject( idT, idOfst, desc10 );
    executeAction( idcopy, desc9, DialogModes.NO );
    return app.activeDocument.activeLayer
    ////// load pdf as smart object //////
    function transformLayer (layer, percentage, xOffset, yOffset) {
    app.activeDocument.activeLayer = layer;
    // =======================================================
    var idTrnf = charIDToTypeID( "Trnf" );
        var desc4 = new ActionDescriptor();
        var idFTcs = charIDToTypeID( "FTcs" );
        var idQCSt = charIDToTypeID( "QCSt" );
        var idQcsa = charIDToTypeID( "Qcsa" );
        desc4.putEnumerated( idFTcs, idQCSt, idQcsa );
        var idOfst = charIDToTypeID( "Ofst" );
            var desc5 = new ActionDescriptor();
            var idHrzn = charIDToTypeID( "Hrzn" );
            var idPxl = charIDToTypeID( "#Pxl" );
            desc5.putUnitDouble( idHrzn, idPxl, xOffset );
            var idVrtc = charIDToTypeID( "Vrtc" );
            var idPxl = charIDToTypeID( "#Pxl" );
            desc5.putUnitDouble( idVrtc, idPxl, yOffset );
        var idOfst = charIDToTypeID( "Ofst" );
        desc4.putObject( idOfst, idOfst, desc5 );
        var idWdth = charIDToTypeID( "Wdth" );
        var idPrc = charIDToTypeID( "#Prc" );
        desc4.putUnitDouble( idWdth, idPrc, percentage );
        var idHght = charIDToTypeID( "Hght" );
        var idPrc = charIDToTypeID( "#Prc" );
        desc4.putUnitDouble( idHght, idPrc, percentage );
        var idLnkd = charIDToTypeID( "Lnkd" );
        desc4.putBoolean( idLnkd, true );
        var idAntA = charIDToTypeID( "AntA" );
        desc4.putBoolean( idAntA, true );
    executeAction( idTrnf, desc4, DialogModes.NO );
    return app.activeDocument.activeLayer
    ////// function to get file’s dimensions, thanks to michael l hale //////
    function getDimensions( file ){
    function divideString (theString) {
              theString = String(theString);
        var a = Number(theString.slice(0, theString.indexOf("\/")));
        var b = Number(theString.slice(theString.indexOf("\/") + 1));
        return (a / b)
    // from a script by michael l hale;
    function loadXMPLibrary(){
         if ( !ExternalObject.AdobeXMPScript ){
              try{
                   ExternalObject.AdobeXMPScript = new ExternalObject
                                                                ('lib:AdobeXMPScript');
              }catch (e){
                   alert( ErrStrs.XMPLIB );
                   return false;
         return true;
    function unloadXMPLibrary(){
       if( ExternalObject.AdobeXMPScript ) {
          try{
             ExternalObject.AdobeXMPScript.unload();
             ExternalObject.AdobeXMPScript = undefined;
          }catch (e){
             alert( ErrStrs.XMPLIB );
    ////// based on a script by muppet mark //////
    function dimensionsShellScript (file) {
              try {
    // getMetaDataMDLS;
    if (File(file) instanceof File && File(file).exists) {
              var shellString = "/usr/bin/mdls ";
              shellString += File(file).fsName;
    //          shellString += File(file).fullName;
              shellString += ' > ~/Documents/StdOut2.txt';
              app.system(shellString);
    // read the file;
    if (File('~/Documents/StdOut2.txt').exists == true) {
        var file = File('~/Documents/StdOut2.txt');
        file.open("r");
        file.encoding= 'BINARY';
        var theText = new String;
        for (var m = 0; m < file.length; m ++) {
                        theText = theText.concat(file.readch());
              file.close();
              theText = theText.split("\n");
    // get the dimensions;
              var dim = new Array;
              for (var m = 0; m < theText.length; m++) {
                        var theLine = theText[m];
                        if (theLine.indexOf("kMDItemPixelWidth") != -1) {dim.push(theLine.match(/[\d\.]+/g).join("") )}
                        if (theLine.indexOf("kMDItemPixelHeight") != -1) {dim.push(theLine.match(/[\d\.]+/g).join("") )}
                        if (theLine.indexOf("kMDItemResolutionWidthDPI") != -1) {dim.push(theLine.match(/[\d\.]+/g).join("") )}
                        if (theLine.indexOf("kMDItemResolutionHeightDPI") != -1) {dim.push(theLine.match(/[\d\.]+/g).join("") )}
    // remove file and hand back;
              File('~/Documents/StdOut2.txt').remove();
    catch (e) {
              if (File('~/Documents/StdOut2.txt').exists == true) {File('~/Documents/StdOut2.txt').remove()};
              return dim
              try{
                        loadXMPLibrary();
                        var xmpf = new XMPFile( file.fsName, XMPConst.UNKNOWN, XMPConst.OPEN_FOR_READ );
                        var xmp = xmpf.getXMP();
                        xmpf.closeFile();
                        var resolutionUnit = xmp.getProperty( XMPConst.NS_TIFF, 'ResolutionUnit', XMPConst.STRING);
                        var resFactor = 1;
                        if (resolutionUnit == 2) {
                                  var resFactor = 1;
                        if (resolutionUnit == 3) {
                                  var resFactor = 2.54;
                        var dim = [xmp.getProperty( XMPConst.NS_EXIF, 'PixelXDimension', XMPConst.STRING),
                        xmp.getProperty( XMPConst.NS_EXIF, 'PixelYDimension', XMPConst.STRING),
                        divideString (xmp.getProperty( XMPConst.NS_TIFF, 'XResolution', XMPConst.STRING)) * resFactor,
                        divideString (xmp.getProperty( XMPConst.NS_TIFF, 'YResolution', XMPConst.STRING)) * resFactor];
                        unloadXMPLibrary();
                        if(dim[0]=="undefined" || dim[1]=="undefined"){
                var dim = undefined;
                var res = undefined;
                var bt = new BridgeTalk;
                bt.target = "bridge";
                var myScript = ("var ftn = " + psRemote.toSource() + "; ftn("+file.toSource()+");");
                bt.body = myScript;
                bt.onResult = function( inBT ) {myReturnValue(inBT.body); }
                bt.send(10);
                        function myReturnValue(str){
                                  res = str;
                                  dim = str.split(',');
                        function psRemote(file){
                                  var t= new Thumbnail(file);
                                  return t.core.quickMetadata.width+','+t.core.quickMetadata.height;
        }catch(e){unloadXMPLibrary()};
              if (String(dim[2]).indexOf("\/") != -1) {
                        var a = divideString(dim[2]);
                        var b = divideString(dim[3]);
                        dim = [dim[0], dim[1], a, b]
    // if dimensions are missing as might be the case with some bitmap tiffs for example try a shell-script;
              if (dim[0] == undefined || dim[1] == undefined) {
                        var array = dimensionsShellScript(file);
                        dim = array;
    // if shell-string failed open doc to get measurements;
              if (dim[0] == undefined || dim[1] == undefined) {
                        var thisDoc = app.open (File(file));
    // close ai without saving;
                        if (file.name.slice(-3).match(/\.(ai)$/i)) {
                                  thisDoc.trim(TrimType.TRANSPARENT);
                                  var dim = [thisDoc.width, thisDoc.height, thisDoc.resolution, thisDoc.resolution];
                                  thisDoc.close(SaveOptions.DONOTSAVECHANGES)
                        else {
                                  var dim = [thisDoc.width, thisDoc.height, thisDoc.resolution, thisDoc.resolution];
                                  thisDoc.close(SaveOptions.PROMPTTOSAVECHANGES)
    return dim;

  • Creating a thumbnail within a workflow process

    Hi,
    Within my workflow process, I want to create thumbnail images of the files/documents that have been uploaded in a page through the out of the box 'Download' component. I want to store these thumbnails on the same page(within /content/mypage). As far as I know, the logic of thumbnail creation of an uploaded files is already available in the DAM. On further probing, I got to know that the thumbnail creation is done as part of a workflow and the workflow process is 'CreateThumbnailProcess'(com.day.cq.dam.core.process.CreateThumbnailProcess). So I tried creating an instance of the CreateThumbnailProcess and calling the execute() method of this process within my workflow process. Here's a glimpse of what I did.
    public void execute(WorkItem item, WorkflowSession session, MetaDataMap args) throws WorkflowException {
         CreateThumbnailProcess proc = new CreateThumbnailProcess();
         System.out.println("Test Workflow entered!!");
         proc.execute(item, session, args);
         System.out.println("Test Workflow executed. Thumbnail created!!");
    But when I start my workflow, I keep getting "Test Workflow entered!!" multiple number of times on my console. I am unable to understand what's happening. Please help me. If there are any simpler alternatives to create a thumbnail, please suggest them too.
    Thanks in advance
    Shriram K M

    Ok.
    So couple of things which you can try out to check what's causing the issue.
    1. If you comment
         //proc.execute(item, session, args);
      does it still causing the same issue. If yes, then problem would be somewhere in your workflow call or process execution which calling this process recurring (i can assume as not see the whole code) and, if not, then this call is only causing the issue which is pretty wierd (looking into possibility and will update you) if you do not have extended the same process as you mentioned above.
    2. Not sure calling another process like this is correct way to do it because CreateThumbnailProcess automatically gets called in cq when image object created in system to create default renditions.
    To answer you other question.
    creating extra thumbnail apart from default renditions you should have to create workflow process as you already did but extend AbstractAssetWorkflowProcess (dont call CreateThumbnailProcess.execute() because there is default workflow process already setup.) and below code in execute method
    Asset asset = getAssetFromPayload(workItem, workflowSession.getSession());
    oriIs = asset.getOriginal().adaptTo(Node.class)
                                .getProperty(JcrConstants.JCR_CONTENT + "/" + JcrConstants.JCR_DATA).getBinary().getStream();
    asset.addRendition(rendition, oriIs, mimetype);  //mimetype and rendition you have to create it as an object based on your requirement.
    also check http://dev.day.com/docs/en/cq/current/javadoc/com/day/cq/dam/core/process/CreateThumbnailP rocess.html for more detail.
    Let me know for more information.
    Thanks,
    Pawan

  • Creating PDF thumbnails in Flash cs5.5 AIR

    I need a way to create a thumbnail of the first page of a PDF. I am downloading a pdf and saving it locally. I just don't know a way to get the contents of the first page to a bitmap, bitarray or jpg format.  I have been using jpgencoder for other image file type thumbnails but don't even know where to go for PDFs.
    Anyone have any ideas?

    No ~ I do answer questions if I know the answer even on the wrong forum.
    And I point to the right forum when I know which it is: this time I know nothing except this is the wrong one!
    Good luck

  • When I drag a picture into my imovie it creates a thumbnail but when it plays over it, it shows the picture in front of it and not the picture...and when I go to crop adjustments it shows a black screen. How do I fix this?

    when I drag a picture into my imovie it creates a thumbnail but when it plays over it, it shows the picture in front of it and not the picture...and when I go to crop adjustments it shows a black screen. How do I fix this?

    I had a similar problem, and i found that the photo was of very low resoluton. As a test I resized the image to a lrager resolution using photoshop CS4 and re saved it as JPG. I imported the new saved image and it seem to have fixed the problem.

  • Need Help Creating Image Array

    Hello,
    I am a newbie at Flex 2 and I am working on this site that
    needs an image array consisting of 5 images. The ideal thought
    would be for the images to load into an HBox I created as a holding
    place and have the images change every 5 seconds or so. I have
    looked around the forums and the internet but I have yet to find
    anything. If anyone can please help me on this I would greatly
    appreciate it.
    Regards,
    Jose

    If you've done what I think you have, then I may have tried something similar.
    I tried creating a BufferedImage in a JPanel, basing the size of the BufferedImage on the size of the JPanel in the constructor, but when the JPanel was created, it tried to set up the image before resizing the JPanel i.e. the BufferedImage size was set to (0,0) and that threw an IllegalArgumentException at runtime. I found that I had to declare variables for an initial image size, then optionally change the image size later.
    Hope that helps.

  • Is there a way to create a thumbnail for QuickTime videos on a PC?  All the videos currently have the same QuickTime logo as there thumbnail.

    Is there a way to create a thumbnail for QuickTime videos on a PC?  (Windows XP)  All the the videos currently have the same QuickTime logo as their thumbnail.

    Abdur,
    In the sheet :: table :: cell that is going to receive the data, type an equals sign, then click on the cell that the data will come from and press Return.
    This will require that you navigate to the origin cell by choosing the proper sheet.
    Jerry

Maybe you are looking for