\documentclass{article}
\usepackage{graphicx}
\usepackage{xepersian}
\makeatletter
\def\XeTeX@scaleinclude#1{%
  \def\@tempa{!}%
  \ifx\Gin@scaley\@tempa
   \let\Gin@scaley\Gin@scalex
  \else
   \ifx\Gin@scalex\@tempa\let\Gin@scalex\Gin@scaley\fi
  \fi
  \hbox{%
    \Gscale@box{\Gin@scalex}[\Gin@scaley]{%
      \@ifundefined{Gin@vllx}{%
        \GXT@viewportfalse
        % without viewport/trim clipping does not make sense
        % for XeTeX
        \Gin@clipfalse
      }{}%
    \ifGin@clip
      \if!\Gin@vllx\Gin@vlly\Gin@vurx\Gin@vury!%
      \else
        \let\GXT@clipend\GXT@DoClipEnd
        \setbox\@tempboxa\hbox\bgroup
      \fi
    \fi
    \ifGXT@viewport
      \ifdim\Gin@vlly\p@=\z@
      \else
        \lower\Gin@vlly bp\hbox\bgroup
      \fi
      \ifdim\Gin@vllx\p@=\z@
      \else
        \hskip-\Gin@vllx bp\relax
      \fi
    \fi
%
    \expandafter\picfilecommand\picfileargs
%
    \ifGXT@viewport
      \ifdim\Gin@vlly\p@=\z@
      \else
        \egroup
      \fi
      \GXT@clipend
    \fi
    }%
  }%
}
\def\GXT@DoClipEnd{%
  \egroup
  \dp\@tempboxa\z@
  % \Gin@urx and \Gin@ury already contain the correct values,
  % so both cases viewport and trim can be handled together:
  \dimen@\Gin@urx\p@
  \advance\dimen@ -\Gin@vllx\p@
  \wd\@tempboxa\strip@pt\dimen@ bp\relax
%  \wd\@tempboxa\dimen@ \relax
  \dimen@\Gin@ury\p@
  \advance\dimen@ -\Gin@vlly\p@
  \ht\@tempboxa\strip@pt\dimen@ bp\relax
%  \ht\@tempboxa\dimen@ \relax
  % Clip box to its official size
  \GXT@clipbox\@tempboxa
  \box\@tempboxa
}
\def\GXT@clipbox#1{%
  \setbox#1=\hbox{%
    \Gin@defaultbp\WIDTH{\wd#1}%
    \Gin@defaultbp\DEPTH{\dp#1}%
    \@tempdima\ht#1%
    \advance\@tempdima\dp#1%
    \Gin@defaultbp\TOTALHEIGHT{\@tempdima}%
    \special{pdf:content q }%
      \special{%
        pdf:literal direct
            0 -\DEPTH\space \WIDTH\space \TOTALHEIGHT\space re
      }%
      \special{pdf:literal direct W }%
      \special{pdf:literal direct n }%
        \special{pdf:literal direct -1 0 0 -1 0 0 cm }%
          \special{pdf:content q }%
            \special{pdf:literal direct -1 0 0 -1 0 0 cm }%
              \box#1%
          \special{pdf:literal direct Q }%
    \special{pdf:literal direct Q }%
  }%
}
\makeatother
\begin{document}
\includegraphics[width=3cm]{chick}

\vskip 10mm

%trim option's parameter order: left bottom right top
\includegraphics[trim = 0mm 30mm 5mm 0mm, clip,width=3cm]{chick}


\end{document}