HorizontalScale Property

Microsoft Publisher Visual Basic

HorizontalScale Property

Returns a Long that represents the scaling of the picture along its horizontal axis. The scaling is expressed as a percentage (for example, 200 equals 200% scaling). Read-only.

expression.HorizontalScale()

expression    Required. An expression that returns a PictureFormat object.

Remarks

The effective resolution of a picture is inversely proportional to the scaling at which the picture is printed. The larger the scaling, the lower the effective resolution. For example, suppose a picture measuring 4 inches by 4 inches was originally scanned at 300 dpi. If that picture is scaled to 2 inches by 2 inches, its effective resolution is 600 dpi.

Use the EffectiveResolution property of the PictureFormat object to determine the resolution at which the picture or OLE object will print in the specified document.

Example

The following example prints selected image properties for each picture in the active publication.

    Dim pgLoop As Page
Dim shpLoop As Shape

For Each pgLoop In ActiveDocument.Pages
    For Each shpLoop In pgLoop.Shapes
        If shpLoop.Type = pbPicture Or shpLoop.Type = pbLinkedPicture Then
        
            With shpLoop.PictureFormat

                   If .IsEmpty = msoFalse Then
                        Debug.Print "File Name: " & .Filename
                        Debug.Print "Resolution in Publication: " & .EffectiveResolution & " dpi"
                        Debug.Print "Horizontal Scaling: " & .HorizontalScale & "%"
                        Debug.Print "Height in publication: " & .Height & " points"
                        Debug.Print "Vertical Scaling: " & .VerticalScale & "%"
                        Debug.Print "Width in publication: " & .Width & " points"
                   End If

            End With
        End If
    Next shpLoop
Next pgLoop