Will Adobe be adding percentage width and height measurements to Muse?
If percentage measurements were added to the Muse tools it would make Muse simply amazing!
Hi Timber,
When you talk about defining the size of the objects in % of the browser, I think you are talking about the responsiveness of the site. If yes, then it is not possible to create responsive sites in Muse at the moment. But yes, you can define 100% width for some items and full screen slideshow only.
Regards,
Aish
Similar Messages
-
will adobe be adding spot removal, adjustment brush and grad filter tools to lightroom mobile?will adobe be adding spot removal, adjustment brush and grad filter tools to lightroom mobile?
We don't know (and anybody who knows can't say). It's an unanswerable question...
-
How do I save the width and height of a photo for repeated use?
How do I save the width and height of a picture for repeated use, rather than having to enter it each time in the 'new file' box?
Thanks, Ed Jackson.It could be that I'm older and have forgotten. I'm now 73 and will admit I have forgotten many things over the years. I have been using Photoshop since Photoshop version 3. And can not really recall which features or changes were made in ever version of Photoshop I have installed. Adobe has added many features over the years. The number of bugs introduce has also greatly increased after CS3. "New Doc Sizes.psp" in your user id preferences is edited using the two buttons in the new document dialog.
As for guide lines in new documents Photoshop CS6 or CC seem to add some for video file presets with guide lines. I do not know how to edit or add guide line to new doc presets. Guide line actions are easy to create. I have also seem some guideline in new documents when I did not expect any perhaps a new bug. Photoshop like most software has bugs. If you do not see Adobe new presets perhaps you copied an old "New Doc Sizes.psp" over Adobe's newer default file or Adobe migrared you presets and wand wiped their presets out. There are bugs. Close Photoshop down and rename your current "New Doc Sizes.psp" in you user id Photoshop cc preferences folder and start Photoshop it will add a dedault "New Doc Sizes.psp" file see if you see Adobe new presets in the new doc pull down when you select video and film... -
[JS] Page item (rectangle frame) width and height
Following is my attempt at writing a function for width and height. It appears to work on rotated and sheared objects. Can anyone tell me if I'm on the right track?
>function WidthAndHeight(myRectangle) // Returns an array [width,height]
]var myRectangleTopLeft = myRectangle.resolve(AnchorPoint.topLeftAnchor, CoordinateSpaces.pasteboardCoordinates, true);
var myRectangleTopRight = myRectangle.resolve(AnchorPoint.topRightAnchor, CoordinateSpaces.pasteboardCoordinates, true);
var myRectangleBottomLeft = myRectangle.resolve(AnchorPoint.bottomLeftAnchor, CoordinateSpaces.pasteboardCoordinates, true);
]var d1x = (myRectangleTopRight[0][0] - myRectangleTopLeft[0][0]);
var d1y = (myRectangleTopRight[0][1] - myRectangleTopLeft[0][1]);
var myWidth = hypotenuse(d1x,d1y);
var d2x = (myRectangleTopLeft[0][0] - myRectangleBottomLeft[0][0]);
var d2y = (myRectangleTopLeft[0][1] - myRectangleBottomLeft[0][1]);
var myHeight = hypotenuse(d2x,d2y);
]return [myWidth,myHeight];
]function hypotenuse(d1,d2)
]]return Math.sqrt ( Math.pow(d1,2) + Math.pow(d2,2) );Dave, you are absolutely right (no surprise here) about always returning points. I'm not sure, but I think this may actually be an InDesign bug. At the end of the 'resolve' method the 'true' value is meant to indicate 'use ruler units', I believe. Having read the documentation, however, it does seem like certain transformation coordinate spaces functions only work in points.
To make this a more complete function, I've updated it to include a conversion to the current ruler units. I'm using the UnitValue object, and perhaps I'm misunderstanding something, but I cannot easily convert to a new UnitValue using the ruler measurements enumerations (it requires a string value to represent the target units). So I've had to include a switch function to get from the enumeration to the string value. Also, the UnitValue object does not seem to work with agates, and I haven't gone so far as to write my own conversion function for that, so the function has to exit with an alert if the user has agates as their ruler units.
If anyone can offer a more elegant way of dealing with this, it would be great. Or even better, some insight into why the resolve method does not seem to honour the ruler units. This _is_ getting a bit over-the-top for a simple width and height function. Maybe Adobe will consider just adding the property to the page item and putting us all (well, certainly me, anyway) out of our misery (I've put in a feature request).
> function WidthAndHeight(myRectangle) // Returns an array [width,height]
]] var myRectangleTopLeft = myRectangle.resolve(AnchorPoint.topLeftAnchor, CoordinateSpaces.pasteboardCoordinates, true);
var myRectangleTopRight = myRectangle.resolve(AnchorPoint.topRightAnchor, CoordinateSpaces.pasteboardCoordinates, true);
var myRectangleBottomLeft = myRectangle.resolve(AnchorPoint.bottomLeftAnchor, CoordinateSpaces.pasteboardCoordinates, true);
]] var d1x = (myRectangleTopRight[0][0] - myRectangleTopLeft[0][0]);
var d1y = (myRectangleTopRight[0][1] - myRectangleTopLeft[0][1]);
var myWidth = hypotenuse(d1x,d1y);
var d2x = (myRectangleTopLeft[0][0] - myRectangleBottomLeft[0][0]);
var d2y = (myRectangleTopLeft[0][1] - myRectangleBottomLeft[0][1]);
var myHeight = hypotenuse(d2x,d2y);
]] var myHorizontalUnits = unitsEnumToString(app.documents[0].viewPreferences.horizontalMeasurementUnits);
var myVerticalUnits = unitsEnumToString(app.documents[0].viewPreferences.verticalMeasurementUnits);
]] myWidth = new UnitValue(myWidth,"points");
myHeight = new UnitValue(myHeight,"points");
]] myWidth = myWidth.as(myHorizontalUnits);
myHeight = myHeight.as(myVerticalUnits);
]] return [myWidth,myHeight];
]] function hypotenuse(d1,d2)
]]]] return Math.sqrt ( Math.pow(d1,2) + Math.pow(d2,2) );
]] function unitsEnumToString(myUnitsEnum)
]]]] switch(myUnitsEnum)
]]]]]] case 2054188905 :
]]]]]]] return "points";
]]]]]] case 2054187363 :
]]]]]]] return "picas";
]]]]]] case 2053729891 :
]]]]]]] return "inches";
]]]]]] case 2053729892 :
]]]]]]] return "inches decimal";
]]]]]] case 2053991795 :
]]]]]]] return "millimeters";
]]]]]] case 2053336435 :
]]]]]]] return "centimeters";
]]]]]] case 2053335395 :
]]]]]]] return "ciceros";
]]]]]] default :
]]]]]]] alert("Cannot convert to the current ruler units. Sorry.");
exit(); -
Changing video frame width and height...
In Adobe Premiere Pro CS 5 I cannot seem to produce (output) a video larger than frame width: 720 and frame height: 480. The video is recorded in full HD 1920 x 1080p but after editing and adding effects in Premiere Pro CS5, the video changes to only 720 x 480.
1) Where are the settings in Premiere Pro changed to produce a video size of frame width: 1280 and frame height: 720 or even frame width: 1920 and height: 1080?
2) Is it possible to produce a video at 1920 x 1080 or is 720 x 480 the max?
Your time is appreciated.John,
For now I will be using the videos for youtube promos and viewing on desktops but if I were, I would more likely output to DVD. From what I understand it doesnt matter if I output 720 x 480 or 1920 x 1080 if it's going on youtube, however I would like the best quality video possible given that these videos wont be very long. (Elaborate on this if you can clear some stuff up for me).
Also, I may have mislead readers with my thread title "Changing video frame width and height." I guess a more accurate title would be "How to Change frame width and height of Video Output." Don't get me wrong 720 x 480 looks great on my desktop, but I would also like to output one at 1280 x 720? -
Specifying target width and height
I want to make one of my b to b links just a small pop-up
listing board members names which would open in front of the
current page. Do i create a separate html file to link to? If so,
how do I set width and height?
Is there some other way to do this?
TIA
GretchenDW has a native behavior called "Open Browser Window" which
will let you do
this.
Murray --- ICQ 71997575
Adobe Community Expert
(If you *MUST* email me, don't LAUGH when you do so!)
==================
http://www.projectseven.com/go
- DW FAQs, Tutorials & Resources
http://www.dwfaq.com - DW FAQs,
Tutorials & Resources
==================
"InwoodLady" <[email protected]> wrote in
message
news:gr0h1e$s39$[email protected]..
>I want to make one of my b to b links just a small pop-up
listing board
>members
> names which would open in front of the current page. Do
i create a
> separate
> html file to link to? If so, how do I set width and
height?
>
> Is there some other way to do this?
>
> TIA
> Gretchen
> -
Revision: 4793
Author: [email protected]
Date: 2009-02-02 11:20:06 -0800 (Mon, 02 Feb 2009)
Log Message:
Fix bug SDK-17734 Path with width and height set different than path data has incorrect bounds
Fix: When calculating the bounds position we should take into account the implicit scaling factor actualSize/naturalSize. Also did some refactoring, getting rid of the protected method calculateTopLeft.
QE Notes: None
Doc Notes: None
Bugs: SDK-17734
Reviewer: Ryan
tests: mustella gumbo/layout/GraphicElement
Ticket Links:
http://bugs.adobe.com/jira/browse/SDK-17734
http://bugs.adobe.com/jira/browse/SDK-17734
Modified Paths:
flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/Ellipse.as
flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/Path.as
flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/graphicsClasses/GraphicElement.a sThank you so much for replying.
Yes I have removed and reinstalled WMP.
I had good results with the PD6 application installed on the default path onto the C: drive with the one exception that if the application was launched by accident and the user data path was not available, the PD6 application would blow away my custom user path registry settings. Now that I know what they are I have made a .reg file to repair my registry to my desired user data paths.
Installing the application on the removable drive appeared to help prevent me from launching the application by accident and overwriting my registry with default user paths.
So which is the less of the two evils?
If the application directory is not available, windows media player still tries to launch the .msi for installing PD6.
If I install the application to the C: drive but the user data to the removable drive, launching the PD6 application without the user data drive will still corrupt my registry settings for a user data path.
Both these issues seem like a logical (if not easy) fix that should be done in the PD6 application and installation package. I mean really, cannot anyone tell me why windows media player is checking the PD6 application directory? Why in PD4 did we have an option control for setting the user data path from the PD4 application? Why is this option not in the PD6 application, just the installer?
I am given a choice during installation to move the user data to another non default location. Why else would this be provided if not to accommodate my kind of request to store the user data into an alternate location other than “My Document”. Certainly Palm is not trying to force the users on how to protect and store their personal data?
Post relates to: Centro (Verizon) -
I cannot get DW8 to insert the width and height automatically
whern inserting an imge. Can anyone help me with it. TIAI have just discovered that if you do the insertion when Code
view and
Design view are 'in synch', i.e., neither the Property
inspector nor the CSS
panel have a "Refresh" button, the width and height will be
inserted in Code
view.
Murray --- ICQ 71997575
Adobe Community Expert
(If you *MUST* email me, don't LAUGH when you do so!)
==================
http://www.dreamweavermx-templates.com
- Template Triage!
http://www.projectseven.com/go
- DW FAQs, Tutorials & Resources
http://www.dwfaq.com - DW FAQs,
Tutorials & Resources
http://www.macromedia.com/support/search/
- Macromedia (MM) Technotes
==================
"intedeco" <[email protected]> wrote in
message
news:ebdb54$5uq$[email protected]..
> Thanks ACE for the info. I am using the technique you
mentioned.
> However, I
> did not have this problem in DWMX. Also, according to
Macromedia 'HELP'
> it is
> inderted automatically. Thios is what is says:
>
>
W and H are the width and height of the image, in pixels.
Dreamweaver
> automatically updates these text boxes with the image?s
original
> dimensions
> when you insert an image in a page.
>
> Hopefully, next update will fix this!
> -
Help to edit width and height of menu?
http://www.ivoog.com/link4
How can I edit the width and height of this menu so the
background image fits? Please explain and give code if you can.
Thanks!
Here's the pictures for the menu:
http://www.pics.ivoog.com/boxs1.gif
http://www.pics.ivoog.com/boxs2.gifYour approach simply isn't going to work.
The background image is a fixed width. It will not shrink or
grow like the
text in front of it.
The background image is wider than the word "pie" but not as
wide as the
word "sigh".
So, if you add padding to the left and right of the link to
make the whole
background show behind "pie", the same padding is added to
"sigh". Now the
"sigh" link is much wider than the background image. Because
your
background image repeats, you see the left edge of the next
repeating one
behind sigh.
If you remove the padding to make it so you see just one
image behind
"sigh", now the padding around "pie" is too narrow to see the
whole
background.
You could try giving each link a class and having a separate
padding for
each word, but all that is pretty useless because different
people have
different text size settings in their browsers.
In some browsers, the words will be bigger than the
background image.
In others, the words will be small and you'll only see part
of the
background.
The free tutorial I sent you is just that, a tutorial.
You do the work, you have the copyright.
If you are not interested in that one, here's another idea.
You can use borders and simple background , like a gradient,
to make a tab
that looks just like your tab images and sizes along with
your text...no
matter how long the word is and no matter what size the text
is.
Here's the free tutorial.
You don't even have to do the whole thing, just the first
part where it
shows you how to make links that look like image buttons.
http://projectseven.com/tutorials/css/uberlinks/index.htm
Good luck,
Tim
"hahahaadobeman" <[email protected]> wrote
in message
news:[email protected]...
> Thanks for answering and sorry for the confusion. The
only problem with
> purchasing and doing this is copyright. I want to make
my own code for the
> menus so it is not copyrighted by anyone.
>
> Can you help edit the width and height of this menu so
the background
> image
> fits? See how my link4 where it says pie sigh and all
that the background
> of
> that doesn't fit with the image? Can you help with this
problem? Thats all
> I
> really needed but thanks for all the links!
> -
Deployment in browser: setting width and height to 100% (or any %)
According to http://docs.oracle.com/javafx/2.0/deployment/deployment_toolkit.htm for deploying a browser embedded JavaFX application, you can set the width and heigth properties to either a fixed value or a percentage value (or, assumedly, any value the browser can accept).
>
width and height
Dimensions used to reserve space for an embedded application. Could be absolute or relative (for example, 50 or 50%). (Required for embed().)
>
However, when I try to set a percentage value (e.g. 100%) from the Netbeans "Run" properties dialog, I get the following exception:
java.lang.NumberFormatException: For input string: "100%"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:492)
at java.lang.Integer.valueOf(Integer.java:582)
at com.sun.javafx.tools.ant.DeployFXTask.execute(DeployFXTask.java:103)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)As can be seen, the exception happens in the DeployFXTask.execute method. It seems that this method requires the values to be integers.
So the question, how can I set the embedded application dimensions to a percentage value? (Without having to edit the HTML file manually after the build - which is a workaround.)
Edited by: Knut Arne Vedaa on 21.feb.2012 21:06As a workaround, in the meantime, look at the build file in the source of the Ensemble sample application (http://www.oracle.com/technetwork/java/javafx/downloads/devpreview-1429449.html) which will patch a generated html file using a custom post processing ant task - this would not work out of the box using the NetBeans generated ant build files though. You could file an issue with NetBeans to ask them to support the workaround in their generated build scripts, but they may just decide to wait until a fix is available in the core platform. As there is a workaround though, I don't think this would be classified as a showstopper issue - just a pretty annoying thing.
-
How to create a map that is larger than the game in width and height?
hi,
i wounder how i can create a map(not the design) that is larger than the game in width and height, part of it will appear in the main page and anther part you can move to it after you press the arrow symbol, but the map is just one image so i want put it in line and out line the game page, and the out line part includes buttons and symbols the player can use, but it will be in line and the other part will be out line when you press the left arrow or the down arrow, how i can do that?
and is that possible to animate it so when the player press the arrow, will give it action to start the animation in one sec, i know how to animate it if that possible but i don't know which code i will use for the mouse click with the arrow symbol, and how to use the same code in the same symbol to start anther animation depending on which part of the map is on?I don't know a lot about mask and masked layers and how to work with the normal layers beside i will use some 3D graphics but not in the background, i will explain all this to you to be more clearly.
first i am using action script 3.0
close ex,
you have 2d map"image" 900*300 pixel.
this image contains some 2d symbols when you click will go to anther normal map (anther normal layer) so they must appear.
your game 320*320 px, and the place the map will show on 300*300, and there's basics objects will be in most pages including the page that show the map so i don't know a lot about how this will work with mask layers.
so you can only see the left side of the map image and what it contains, while there's two arrows one to the left and one to the right there's three cases here,
first when it show the left side(start from x:0 to x:300), the left arrow will not active when you press and the right arrow will start an animation that make the map image move to the mid side in one sec when you press.
in mid side (start from x:301 to x:600) the same left arrow will active when you press to send you back to the left side while the same right arrow will be active to send you not to the mid side but to the right side,
when moved to the right side the same left arrow will be active to send you to the mid and the right will not active when you press and depending on that,
first how to make the large image appear with the three sides in the same place without effecting the other objects "like disappearing them" ?
and the codes i need in the same left or right arrow symbol to make different actions with the same symbol when clicked depending on which part of the map is on. -
Java returning incorrect values for width and height of a Tiff image
I have some TIFF images (sorry, I cannot post them b/c of there confidential nature) that are returning the incorrect values for the width and height. I am using Image.getWidth(null) and have tried the relevant methods from BufferedImage. When I open the same files in external viewers (Irfanview, MS Office Document Imaging) they look fine and report the "correct" dimensions. When I re-save the files, my code works fine. Obviously, there is something wrong with the files, but why would the Java code fail and not the external viewers? Is there some way I can detect file problems?
Here is the code, the relevant section is in the print() routine.
* ImagePrinter.java
* Created on Feb 27, 2008
* Created by tso1207
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.print.PageFormat;
import java.awt.print.PrinterException;
import java.io.File;
import java.io.IOException;
import java.util.Iterator;
import javax.imageio.ImageIO;
import javax.imageio.ImageReader;
import javax.imageio.stream.FileImageInputStream;
import javax.imageio.stream.ImageInputStream;
import com.shelter.io.FileTypeIdentifier;
public class ImagePrinter extends FilePrintable
private final ImageReader _reader;
private final int _pageCount;
private final boolean _isTiff;
//for speed we will hold current page info in memory
private Image _image = null;
private int _imgWidth = 0;
private int _imgHeight = 0;
private int _currentPage = -1;
public ImagePrinter(File imageFile) throws IOException
super(imageFile);
ImageInputStream fis = new FileImageInputStream(getFile());
Iterator readerIter = ImageIO.getImageReaders(fis);
ImageReader reader = null;
while (readerIter.hasNext())
reader = (ImageReader) readerIter.next();
reader.setInput(fis);
_reader = reader;
int pageCount = 1;
String mimeType = FileTypeIdentifier.getMimeType(imageFile, true);
if (mimeType.equalsIgnoreCase("image/tiff"))
_isTiff = true;
pageCount = reader.getNumImages(true);
else
_isTiff = false;
_pageCount = pageCount;
public int print(java.awt.Graphics g, java.awt.print.PageFormat pf, int pageIndex)
throws java.awt.print.PrinterException
int drawX = 0, drawY = 0;
double scaleRatio = 1;
if (getCurrentPage() != (pageIndex - getPageOffset()))
try
setCurrentPage(pageIndex - getPageOffset());
setImage(_reader.read(getCurrentPage()));
setImgWidth(getImage().getWidth(null));
setImgHeight(getImage().getHeight(null));
catch (IndexOutOfBoundsException e)
return NO_SUCH_PAGE;
catch (IOException e)
throw new PrinterException(e.getLocalizedMessage());
if (!_isTiff && getImgWidth() > getImgHeight())
pf.setOrientation(PageFormat.LANDSCAPE);
else
pf.setOrientation(PageFormat.PORTRAIT);
Graphics2D g2 = (Graphics2D) g;
g2.translate(pf.getImageableX(), pf.getImageableY());
g2.setClip(0, 0, (int) pf.getImageableWidth(), (int) pf.getImageableHeight());
scaleRatio =
(double) ((getImgWidth() > getImgHeight())
? (pf.getImageableWidth() / getImgWidth())
: (pf.getImageableHeight() / getImgHeight()));
//check the scale ratio to make sure that we will not write something off the page
if ((getImgWidth() * scaleRatio) > pf.getImageableWidth())
scaleRatio = (pf.getImageableWidth() / getImgWidth());
else if ((getImgHeight() * scaleRatio) > pf.getImageableHeight())
scaleRatio = (pf.getImageableHeight() / getImgHeight());
int drawWidth = getImgWidth();
int drawHeight = getImgHeight();
//center image
if (scaleRatio < 1)
drawX = (int) ((pf.getImageableWidth() - (getImgWidth() * scaleRatio)) / 2);
drawY = (int) ((pf.getImageableHeight() - (getImgHeight() * scaleRatio)) / 2);
drawWidth = (int) (getImgWidth() * scaleRatio);
drawHeight = (int) (getImgHeight() * scaleRatio);
else
drawX = (int) (pf.getImageableWidth() - getImgWidth()) / 2;
drawY = (int) (pf.getImageableHeight() - getImgHeight()) / 2;
g2.drawImage(getImage(), drawX, drawY, drawWidth, drawHeight, null);
g2.dispose();
return PAGE_EXISTS;
* <br><br>
* Created By: TSO1207 - John Loyd
* @since version XXX
* @return
public int getPageCount()
return _pageCount;
public void destroy()
setImage(null);
try
_reader.reset();
_reader.dispose();
catch (Exception e)
System.gc();
* <br><br>
* Created By: TSO1207 - John Loyd
* @since Mar 25, 2008
* @return
public Image getImage()
return _image;
* <br><br>
* Created By: TSO1207 - John Loyd
* @since Mar 25, 2008
* @return
public int getImgHeight()
return _imgHeight;
* <br><br>
* Created By: TSO1207 - John Loyd
* @since Mar 25, 2008
* @return
public int getImgWidth()
return _imgWidth;
* <br><br>
* Created By: TSO1207 - John Loyd
* @since Mar 25, 2008
* @param image
public void setImage(Image image)
_image = image;
* <br><br>
* Created By: TSO1207 - John Loyd
* @since Mar 25, 2008
* @param i
public void setImgHeight(int i)
_imgHeight = i;
* <br><br>
* Created By: TSO1207 - John Loyd
* @since Mar 25, 2008
* @param i
public void setImgWidth(int i)
_imgWidth = i;
* <br><br>
* Created By: TSO1207 - John Loyd
* @since Mar 25, 2008
* @return
public int getCurrentPage()
return _currentPage;
* <br><br>
* Created By: TSO1207 - John Loyd
* @since Mar 25, 2008
* @param i
public void setCurrentPage(int i)
_currentPage = i;
}Edited by: jloyd01 on Jul 3, 2008 8:26 AMFigured it out. The files have a different vertical and horizontal resolutions. In this case the horizontal resolution is 200 DPI and the vertical is 100 DPI. The imgage width and height values are based on those resolution values. I wrote a section of code to take care of the problem (at least for TIFF 6.0)
private void setPageSize(int pageNum) throws IOException
IIOMetadata imageMetadata = _reader.getImageMetadata(pageNum);
//Get the IFD (Image File Directory) which is the root of all the tags
//for this image. From here we can get all the tags in the image.
TIFFDirectory ifd = TIFFDirectory.createFromMetadata(imageMetadata);
double xPixles = ifd.getTIFFField(256).getAsDouble(0);
double yPixles = ifd.getTIFFField(257).getAsDouble(0);
double xRes = ifd.getTIFFField(282).getAsDouble(0);
double yres = ifd.getTIFFField(283).getAsDouble(0);
int resUnits = ifd.getTIFFField(296).getAsInt(0);
double imageWidth = xPixles / xRes;
double imageHeight = yPixles / yres;
//if units are in CM convert ot inches
if (resUnits == 3)
imageWidth = imageWidth * 0.3937;
imageHeight = imageHeight * 0.3937;
//convert to pixles in 72 DPI
imageWidth = imageWidth * 72;
imageHeight = imageHeight * 72;
setImgWidth((int) Math.round(imageWidth));
setImgHeight((int) Math.round(imageHeight));
setImgAspectRatio(imageWidth / imageHeight);
} -
Revision: 3580
Author: [email protected]
Date: 2008-10-10 16:24:50 -0700 (Fri, 10 Oct 2008)
Log Message:
MXMLG-243 - Path does not draw in the correct location when width and height are set
Fixed MatrixUtil.transformBounds to offset the four bound points by the origin
Bug: MXMLG-243
QA: Yes
Doc: No
Review: Evtim
Ticket Links:
http://bugs.adobe.com/jira/browse/MXMLG-243
http://bugs.adobe.com/jira/browse/MXMLG-243
Modified Paths:
flex/sdk/trunk/frameworks/projects/flex4/src/mx/utils/MatrixUtil.asHi,
For web application problem, please post your thread in
ASP.NET forum.
Best Wishes!
We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
Click
HERE to participate the survey. Thanks<br/> MSDN Community Support<br/> <br/> Please remember to "Mark as Answer" the responses that resolved your issue. It is a common way to recognize those who have helped you, and
makes it easier for other visitors to find the resolution later. -
Nested canvas in GridLayout can't get its width and height
Hello,
I have a class entitled DisplayCanvas, which will accept some parameters from an invocation in another class including a shape and message parameters. These parameters must be centered in the instance of DisplayCanvas.
For some reason, when I use this.getWidth() and this.getHeight() within my DisplayCanvas class, I get 0 and 0! I need the width and height in order to center the parameters the user will enter.
Why does the width and height result at 0? What can I do to get the width and height?
In my DisplayCanvas class notice the lines:
canWidth = this.getWidth();
canHeight = this.getHeight();
For some reason the result is 0 for each!
Here is my code for the DisplayCanvas class:
//import the necessary clases
import java.awt.*;
import java.applet.*;
import javax.swing.*;
//begin the DisplayCanvas
public class DisplayCanvas extends Canvas
//declare private data members to house the width and height of the canvas
private int canWidth;
private int canHeight;
//declare private data members for the shape and message
private String message;
private String shape;
private Color sColor;
private int sWidth;
private int sHeight;
private String font;
private Color ftColor;
private int ftSize;
//declare public data members
//constructor of DisplayCanvas
public DisplayCanvas()
//set the width and height
canWidth = this.getWidth();
canHeight = this.getHeight();
//set all data members to defaults
message = "";
shape = "";
sColor = null;
sWidth = 0;
sHeight = 0;
font = "";
ftColor = null;
ftSize = 0;
} //end the constructor
//begin the setParams function
public void setParams(String m, String s, Color c, int w, int h,
String f, Color ftC, int ftS)
//set all private data members of DisplayShape to the arguments
//this function assumes error checking was done by DemoShape
message = m;
shape = s;
sColor = c;
sWidth = w;
sHeight = h;
font = f;
ftColor = ftC;
ftSize = ftS;
} //end the setParams function
//begin the public paint function of ShowShape
public void paint(Graphics g)
//set and output the shape according to the arguments
//determine the x and y of the shape
int x = (canWidth - sWidth) / 2;
int y = (canHeight - sHeight) / 2;
//set the color for the graphic object
g.setColor(sColor);
//output the shape
g.drawRect(x, y, sWidth, sHeight);
//set and output the message according to the arguments
//set the color and the font for the graphic object
g.setColor(ftColor);
g.setFont(new Font(font, Font.PLAIN, ftSize));
//determine the centering of the message
//output the message with the settings
g.drawString(canWidth + " " + canHeight, 10, 10);
} //end the paint function of ShowShape class
} //end the DisplayCanvas classHere is my form entry class using the nested DisplayCanvas instance entitled drawCanvas:
//import the necessary java packages
import java.awt.*; //for the awt widgets
import javax.swing.*; //for the swing widgets
import java.awt.event.*; //for the event handler interfaces
//no import is needed for the DisplayCanvas class
//if in the same directory as the DemoShape class
public class DemoShape extends JApplet
//declare private data members of the DemoShape class
//declare the entry and display panel containers
private Container entire; //houses entryPanel and displayCanvas
private JPanel entryPanel; //accepts the user entries into widgets
private DisplayCanvas drawCanvas; //displays the response of entries
//required control buttons for the entryPanel
private JTextField xShapeText, yShapeText, messageText, fontSizeText;
private ButtonGroup shapeRadio;
private JRadioButton rect, oval, roundRect;
private JComboBox shapeColorDrop, fontTypeDrop, fontColorDrop;
//declare public data members of the DemoShape class
//init method to initialize the applet objects
public void init()
//arrays of string to be used later in combo boxes
//some are used more than once
String fonts[] = {"Dialog", "Dialog Input", "Monospaced",
"Serif", "Sans Serif"};
String shapes[] = {"Rectangle", "Round Rectangle", "Oval"};
String colors[] = {"Black", "Blue", "Cyan", "Dark Gray",
"Gray", "Green", "Light Gray", "Magenta", "Orange",
"Pink", "Red", "White", "Yellow"};
//declare variables to assist with the layout
//these are the left and right justified x coordinates
int ljX = 10; int rjX = 150;
//this is the y coordinates for the rows
int yRow1 = 10; //the shape rows
int yRow2 = 40;
int yRow3 = 60;
int yRow4 = 130;
int yRow5 = 150;
int yRow6 = 210; //the message rows
int yRow7 = 240;
int yRow8 = 260;
int yRow9 = 300;
int yRow10 = 320;
int yRow11 = 360;
int yRow12 = 380;
//these are the widths for the text boxes, drop downs
//message entry, big message entry and radio buttons
int tWidth = 30; int dWidth = 100;
int mWidth = 250; int bmWidth = 250;
int rWidth = 125;
//the height is universal, even for the messages!
int height = 25;
//set a content pane for the entire applet
//set the size of the entire window and show the entire applet
entire = this.getContentPane();
entire.setLayout(new GridLayout(1, 2));
//create the entry panel and add it to the entire pane
entryPanel = new JPanel();
entryPanel.setLayout(null);
entire.add(entryPanel);
//create the display canvas and add it to the entire pane
//this will display the output
drawCanvas = new DisplayCanvas();
entire.add(drawCanvas);
//entry panel code
//add the form elements in the form of rows
//the first row (label)
JLabel entryLabel = new JLabel("Enter Shape Parameters:");
entryPanel.add(entryLabel);
entryLabel.setBounds(ljX, yRow1, bmWidth, height);
//second row (labels)
JLabel shapeTypeLabel = new JLabel("Select Shape:");
shapeTypeLabel.setBounds(ljX, yRow2, mWidth, height);
entryPanel.add(shapeTypeLabel);
JLabel shapeColorLabel = new JLabel("Select Shape Color:");
shapeColorLabel.setBounds(rjX, yRow2, mWidth, height);
entryPanel.add(shapeColorLabel);
//third row (entry)
rect = new JRadioButton("Rectangle", true);
oval = new JRadioButton("Oval", false);
roundRect = new JRadioButton("Round Rectangle", false);
rect.setBounds(ljX, yRow3, rWidth, height);
oval.setBounds(ljX, yRow3 + 20, rWidth, height);
roundRect.setBounds(ljX, yRow3 + 40, rWidth, height);
shapeRadio = new ButtonGroup();
shapeRadio.add(rect);
shapeRadio.add(oval);
shapeRadio.add(roundRect);
entryPanel.add(rect);
entryPanel.add(oval);
entryPanel.add(roundRect);
shapeColorDrop = new JComboBox(colors);
shapeColorDrop.setBounds(rjX, yRow3, dWidth, height);
shapeColorDrop.addFocusListener(new focusListen());
entryPanel.add(shapeColorDrop);
//the fourth row (labels)
JLabel xShapeLabel = new JLabel("Enter Width:");
xShapeLabel.setBounds(ljX, yRow4, mWidth, height);
entryPanel.add(xShapeLabel);
JLabel yShapeLabel = new JLabel("Enter Height:");
yShapeLabel.setBounds(rjX, yRow4, mWidth, height);
entryPanel.add(yShapeLabel);
//the fifth row (entry)
xShapeText = new JTextField("200", 3);
xShapeText.setBounds(ljX, yRow5, tWidth, height);
xShapeText.addFocusListener(new focusListen());
entryPanel.add(xShapeText);
yShapeText = new JTextField("200", 3);
yShapeText.setBounds(rjX, yRow5, tWidth, height);
yShapeText.addFocusListener(new focusListen());
entryPanel.add(yShapeText);
//the sixth row (label)
JLabel messageLabel = new JLabel("Enter Message Parameters:");
messageLabel.setBounds(ljX, yRow6, bmWidth, height);
entryPanel.add(messageLabel);
//the seventh row (labels)
JLabel messageEntryLabel= new JLabel("Enter Message:");
messageEntryLabel.setBounds(ljX, yRow7, mWidth, height);
entryPanel.add(messageEntryLabel);
//the eighth row (entry)
messageText = new JTextField("Enter your message here.");
messageText.setBounds(ljX, yRow8, mWidth, height);
messageText.addFocusListener(new focusListen());
entryPanel.add(messageText);
//the ninth row (label)
JLabel fontTypeLabel = new JLabel("Select Font:");
fontTypeLabel.setBounds(ljX, yRow9, mWidth, height);
entryPanel.add(fontTypeLabel);
JLabel fontColorLabel = new JLabel("Select Font Color:");
fontColorLabel.setBounds(rjX, yRow9, mWidth, height);
entryPanel.add(fontColorLabel);
//the tenth row (entry)
fontTypeDrop = new JComboBox(fonts);
fontTypeDrop.setBounds(ljX, yRow10, dWidth, height);
fontTypeDrop.addFocusListener(new focusListen());
entryPanel.add(fontTypeDrop);
fontColorDrop = new JComboBox(colors);
fontColorDrop.setBounds(rjX, yRow10, dWidth, height);
fontColorDrop.addFocusListener(new focusListen());
entryPanel.add(fontColorDrop);
//the eleventh row (label)
JLabel fontSizeLabel = new JLabel("Select Font Size:");
fontSizeLabel.setBounds(ljX, yRow11, mWidth, height);
entryPanel.add(fontSizeLabel);
//the final row (entry)
fontSizeText = new JTextField("12", 2);
fontSizeText.setBounds(ljX, yRow12, tWidth, height);
fontSizeText.addFocusListener(new focusListen());
entryPanel.add(fontSizeText);
//display panel code
//use test parameters
//these will later be retrieved from the entries
drawCanvas.setParams("Hello", "roundRect", Color.red,
100, 100, "Serif", Color.black, 12);
//set the applet to visible
//set to visible and display
entire.setSize(800, 600);
entire.setVisible(true);
} //end the init method
//declare an inner class to handle events
private class focusListen implements FocusListener
//supply the implementation of the actionPerformed method
//pass an event variable as the argument
public void focusLost(FocusEvent e)
{ JOptionPane.showMessageDialog(null, "Focus lost."); }
//declare an empty focus gained function
public void focusGained(FocusEvent e) {}
} //end testListen class
} //end DemoShape classSorry for glossing over your code sample, particularly as it looks like one of the best I've seen so far on the forums, but I'm pretty sure the answer you are looking for is as follows:
Java doesn't render a component until paint() is called so until then you are not going to have any size settings because the jvm simply doesn't know how big the visual component is. This makes sense when you think about what the jvm is doing. The layout manager controls the display of the components depending on the settings it is supplied. So until it knows how many components you want, where, what kind of spacing, etc, etc, etc, how can the size be determined.
The true cycle of events is therefore:
create an instance of DisplayCanvas,
add it to your container,
make the container visible (which renders the component),
get the size of the DisplayCanvas instance.
You are being hampered because your desired chain of events is:
create an instance of DisplayCanvas,
get the size of the DisplayCanvas instance,
add it to your container,
make the container visible.
This state of affairs is highly annoying and then leads to the next question "what do we do about that?". There is a cunning trick which is to get the jvm to render the component to an off-screen image, thus calculating the dimensions of the component so that you can do precisely the kind of enquiry on the object that you have been looking for. It should be noted that this may not be the visual size for all the reasons given above, but it is the "preferred size" for the component. Check the Swing tutorials and have a look at the section on Layout Managers for a run down on what that means.
Anyway, we can use this handy code sample to determine the preferred size for your component. Notice the call to "paint()" (normally you would never make a direct call to paint() in swing) and the "g.dispose()" to free resources:
package com.coda.swing.desktool.gui;
import java.awt.Component;
import java.awt.Dimension;
import java.awt.Graphics2D;
import java.awt.image.BufferedImage;
public class PaintUtil
public PaintUtil()
super();
public static Component paintBuffer(Component comp)
Dimension size = comp.getPreferredSize();
comp.setSize(size);
BufferedImage img = new BufferedImage(size.width, size.height, BufferedImage.TYPE_INT_ARGB);
Graphics2D g2 = img.createGraphics();
comp.paint(g2);
g2.dispose();
return comp;
}Before you make a call to getWidth() or getHeight() put in a call to "PaintUtil.paintBuffer(this);" and see what happens.
By the way, I can't claim credit for this code ... and I really wish I could remember where I got it from myself so I can thank them :) -
Scripting TGetProperty width and height
Hello all,
i have a problem with the flash player in IE6 and FF2.
I have a html page with some flash movie elements on it.
I'm using SWFObject to bind the movies in.
After the onload event is fired, for each flash movie the
javascript function setCorrectSize4Flash will be called to resize
the html container element (embed, object tag) automatically by the
given width and height of the flash movie.
Therefore i'm checking if the movie is completely loaded and
if width and height is not undefined.
So if i'm getting width and height, i'm resizing the
container element to best fit in.
My problem is now, that the same movie used several times in
the same html page has every time different width and height
values. Sometimes the aspect ratio is 1:2 and sometimes it's 2:1.
Is this a problem of the flash player plugin or am i doing
something wrong.
Best regards,
bartmarkThank you for your answer. But I don't understand:
The question is not the margin. I put in the body margin: 0; padding:0; and there is no margin.
I want to know the viewport: the width and height with the iPad in horizontal position and without the address bar.
This does not coincide with the 1024 x 768. (nor the 946 x 768 if I rest the address bar). I don't understand why
Thank you
Narcís
Maybe you are looking for
-
PowerPoint file as an attachment
Hello: I am using JavaMail 1.4 and the activation framework to send email from cmdline. I am using JDK 1.6. The task is send an HTML email (inline) and an accompanying PPT as an attachment. Here is the code fragment: String filename = "Something.ppt"
-
Pure AS3 Project unable to resolve resource bundle
I've been working on a pure AS3 project in Flash Builder and all has been going just fine. All of a sudden, I started getting errors such as: Unable to resolve resource bundle "core" for locale "en_US". Player Unknown Flex Problem What in the heck di
-
Recently i am testing LTE network and intially though of having problems with USIM card. But it turns out that the phone is the problem. I am testing with 4 type of handsets, I-phone5, Galaxy S4, Blackberry Z10 and Huawei 4G modem. All of them suppor
-
How to create a standard DVD from HD video footage
Hi everyone, apologies in advance if my question has no doubt been asked before. This is my first post and I am desperate for some guidance. I've scanned previous questions on similar topics and haven't quite found the same query (or had the confiden
-
Export failing with errors.
While exporting i am getting the following error. Please me to resolve the same. [orauser@ocvmrh2093 orauser]$ exp "system/manager as sysdba" TRANSPORT_TABLESPACE=y TABLESPACES=tbs1 FILE=tbs1_file.dmp log=tbs1_file.log LRM-00108: invalid positional p