zoukankan      html  css  js  c++  java
  • vba 图片

    Function zoom(ByVal shape As ShapeRange, ByVal img As image, ByVal rng As Range)
    Dim orgWidth As Double
    Dim orgHeight As Double
    Dim retHeight As Double
    Dim retWidth As Double
    Dim toWidth, toHeight As Double
          orgWidth = img.Picture.Width
          orgHeight = img.Picture.Height
          toWidth = rng.MergeArea.Width - 4
          toHeight = rng.MergeArea.Height - 4
          If toWidth > toHeight Then
                If orgHeight > orgWidth Then
                      retHeight = toHeight
                      retWidth = orgWidth / orgHeight * toHeight
                End If
                If orgHeight < orgWidth Then
                    If orgHeight / orgWidth * toWidth > toHeight Then
                          retHeight = toHeight
                          retWidth = orgWidth / orgHeight * toHeight
                    Else
                          retWidth = toWidth
                          retHeight = orgHeight / orgWidth * toWidth
                    End If
                End If
                If orgHeight = orgWidth Then
                      retHeight = toHeight
                      retWidth = orgWidth / orgHeight * toHeight
                End If
          End If
          If toWidth < toHeight Then
                If orgHeight > orgWidth Then
                      If orgWidth / orgHeight * toHeight > toWidth Then
                            retWidth = toWidth
                            retHeight = orgHeight / orgWidth * toWidth
                      Else
                            retHeight = toHeight
                            retWidth = orgWidth / orgHeight * toHeight
                      End If
                End If
                If orgHeight < orgWidth Then
                          retWidth = toWidth
                          retHeight = orgHeight / orgWidth * toWidth
                End If
                If orgHeight = orgWidth Then
                          retWidth = toWidth
                          retHeight = orgHeight / orgWidth * toWidth
                End If
          End If
        If toWidth = toHeight Then
                If orgHeight > orgWidth Then
                      retHeight = toHeight
                      retWidth = orgWidth / orgHeight * toHeight
                End If
                If orgHeight < orgWidth Then
                      retWidth = toWidth
                      retHeight = orgHeight / orgWidth * toWidth
                End If
                If orgHeight = orgWidth Then
                      retHeight = toHeight
                      retWidth = toWidth
                End If
        End If
        shape.LockAspectRatio = msoFalse
        shape.Width = retWidth
        shape.Height = retHeight
        shape.Rotation = 0#
        shape.Top = rng.MergeArea.Top + rng.MergeArea.Height / 2 - retHeight / 2
        shape.Left = rng.MergeArea.Left + rng.MergeArea.Width / 2 - retWidth / 2
    End Function
  • 相关阅读:
    java中map接口hashMap以及Enty之间的用法和关系
    Collection集合总结,List和set集合的用法,HashSet和LinkedHashSetde用法
    微信小程序开发攻略
    Java闰年的计算,Calendar的用法
    Java计算计算活了多少天
    Java用代码演示String类中的以下方法的用法
    Java判断一个字符串中有多少大写字母、小写字母和数字
    Java将一个字符串的首位改为大写后边改为小写的实现,String
    Java 获取一个字符串中,另一个字符串出现的次数
    linux下重命名文件或文件夹(linux)
  • 原文地址:https://www.cnblogs.com/perock/p/2618421.html
Copyright © 2011-2022 走看看