• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Custom IC SKILL
  3. Export Image

Stats

  • Locked Locked
  • Replies 2
  • Subscribers 145
  • Views 16490
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Export Image

ahata
ahata over 13 years ago

 Hi,

 I'm runing an skill code which generates all layouts automatically and I would like to export an image of each layout. I am using the comman:

 

deOpenCellView( libName cell "layout" "maskLayout" wid "r")

hiExportImage(?fileName imagePath ?bBox list(llx:lly urx:ury) ?width  nwpix ?window wid)

 which if I am bit wrong generates an image of the layout that is opened in a windows wid.

 My question is if there's a way to generate the image without opening the window. Since I'm actually taking several images, opening the windows is time consuming.

 Thanks in advance for your help

 

 

  • Cancel
Parents
  • Andrew Beckett
    Andrew Beckett over 13 years ago

    You can either do it like this: 

        ;--------------------------------------------------------------------
        ; Open a window and export it. 
        ; 
        ; If using IC613 ISR13 or later, you can use "none" in the call
        ; to hiCreateWindow below. Otherwise change it to be "graphics"
        ; (the difference is that the window will then appear briefly)
        ;--------------------------------------------------------------------
        ;; Similar to thumbnail code...
        dd=ddGetObj( lib cell view "*")
        viewType=ddMapGetFileViewType(dd)
    
        ; was none rather than graphics
        wid = hiCreateWindow( list(0:0 800:800) "none" "Export Window")
        wid->neverCurrentWindow = t
        deOpenCellView( lib cell view viewType wid "r")
    
        sprintf(imageFile "tbIMG_%s.png" testName)
        hiExportImage(
          ?fileName strcat(datasheetDir "/" imageFile)
          ?exportRegion 'entireDesign
          ?bgType 'transparent
          ?window wid
        )
        hiCloseWindow(wid)

     

    Or you could use hiGenerateThumbnails() to do this - it has (from IC615 onwards) a ?filePath argument which allows you to generate the "thumbnail" (which can be whatever sizes you want) to a file outside the cellView.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Andrew Beckett
    Andrew Beckett over 13 years ago

    You can either do it like this: 

        ;--------------------------------------------------------------------
        ; Open a window and export it. 
        ; 
        ; If using IC613 ISR13 or later, you can use "none" in the call
        ; to hiCreateWindow below. Otherwise change it to be "graphics"
        ; (the difference is that the window will then appear briefly)
        ;--------------------------------------------------------------------
        ;; Similar to thumbnail code...
        dd=ddGetObj( lib cell view "*")
        viewType=ddMapGetFileViewType(dd)
    
        ; was none rather than graphics
        wid = hiCreateWindow( list(0:0 800:800) "none" "Export Window")
        wid->neverCurrentWindow = t
        deOpenCellView( lib cell view viewType wid "r")
    
        sprintf(imageFile "tbIMG_%s.png" testName)
        hiExportImage(
          ?fileName strcat(datasheetDir "/" imageFile)
          ?exportRegion 'entireDesign
          ?bgType 'transparent
          ?window wid
        )
        hiCloseWindow(wid)

     

    Or you could use hiGenerateThumbnails() to do this - it has (from IC615 onwards) a ?filePath argument which allows you to generate the "thumbnail" (which can be whatever sizes you want) to a file outside the cellView.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
No Data

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information