April 9, 201312 yr Hi All, Is there a way in FileMaker Pro to take a screen capture of the current application UI Layout? The "Print[]" or "Save as PDF[]" script steps will print only the portions of the layout that comes within the print margin. The rest part of the layout will not get printed. I tried with the Screen Capture functionality of "360wroks ScriptMaster plug-in", it works well it takes a screen shot of the entire desktop. But here I want only to capture the current FileMaker Layout window not the desktop backgrounds for example the system task bar, other objects visible at the background of FM application window. I could able to do some calculations to set the selection area for the window to be captured. But here the problem is some users have there Task Bar on the bottom of the desktop and some have it on the left side of the window. I need to standardize my script to select only the Layout window and work for every cases regardless of the Computer Task Bar positioning. Does anyone have a trick or method to take a Screen Capture or Screen Shot of a Layout by running a button script. Please help. Thanks Stiti Samantaray, Team Lead, FileMaker Team, Mindfire Solutions, India Website: www.mindfiresolitions.com Email: [email protected]
April 9, 201312 yr You can't do it with a FileMaker Script. You can't enter layout mode On OSX you can (at least up to FMP10) get the layout as PDF if you select all in layout mode and copy it. Then you need a tool that is capable of reading the PasteBoard. FMP copies 3 items into the PasteBoard: an item of type "CorePasteboardFlavorType 0x584D4C4F" which is an xml representation of the selection like in the DDR. an item of type "Apple PDF pasteboard type" which is a pdf representaion of the selection an item of type "Apple PICT pasteboard type" which is a PICT representaion of the selection. This one is obsolete since 10.6 IIRC windows has a similar feature. So you need a tool that is capable of inspecting the pasteboard/clipboard and saving it's contents to a file.
April 11, 201312 yr If you're talking about Layout mode, as Karsten is referring to, I don't think that's possible with a script. If you're talking about browse mode, you're on the right track. As I recall, the SM function is called as ScreenCapture ( left ; top ; width ; height ). So you'll have to have two different sets of values based on platform (PC or Mac; you have to account for the application window on the PC). Mac: * You might need some adjustment to the top based on the presence of toolbars, etc. left = Get ( WindowLeft ) top = Get ( WindowTop ) + ( Get ( WindowHeight ) - Get ( WindowContentHeight ) ) width = Get ( WindowContentWidth ) height = Get ( WindowContentHeight ) PC: * This one is tougher, since you need some way to determine the position of the application window. Google around and you'll find some plugins and other solutions. One is the MonkeyBread FMP plugin, which can grab the window location (I think it also has a screen grab function). Again, you might need some calculated adjustment based on toolbar presence. left = MBS ( "Window.GetLeft" ; 0 ) right = MBS ( "Window.GetTop" ; 0 ) + ( Get ( WindowHeight ) - Get ( WindowContentHeight ) ) width = (same as above) height = (same as above)
Create an account or sign in to comment