What about this to create the textured rectangle. Here, pic is the picture you want to use for the Texture and ll and ur are the lower left and upper right corners of the box.
rec[ll_, ur_, pic_] := Module[{crop, boxrat},
boxrat = #2/#1 & @@ MapThread[Abs[#2 - #1] &, {ll, ur}];
crop = ImageCrop[pic, Transpose[{ ImageDimensions[pic]}],
AspectRatio -> boxrat];
{Texture[ImageData[crop]],
Polygon[Tuples[Sort /@ Transpose[{ll, ur}]][[{1, 2, 4, 3}]],
VertexTextureCoordinates -> Tuples[{0, 1}, 2][[{1, 2, 4, 3}]]]}]
For your example you would get
pic = Import[
"http://dailytechgadgets.files.wordpress.com/2011/02/old-ferrari.jpg"];
Graphics[{EdgeForm[Thickness[.005]], White,
Rectangle[{0, 0}, {160, 90}], Black, Opacity[.7],
Rectangle[{0, 0}, {80, 63}], White, Opacity[1],
rec[{80, 0}, {160, 63}, pic], Opacity[1],
Flatten@({Flatten@(Table[
RandomChoice[{GrayLevel[.15], c0[[#]]}], {3}] & /@ Range[2, 4, 1]),
MapThread[
Function[{Xs, Ys},
Rectangle[{Xs, Ys}, {Xs + 16, Ys + 9}]], {Flatten@
Table[Range[0, 32, 16], {3}],
Flatten@(Table[#, {3}] & /@
Range[63, 81, 9])}]}\[Transpose])},
Method -> {"ShrinkWrap" -> True}, ImageSize -> 500]
which produces

Edit
Instead of cropping the image first and using that as the texture you can also play around with the settings for VertexTextureCoordinates. For example you could also do
rec2[ll_, ur_, pic_, f_:.5] :=
Module[{boxrat, picrat},
picrat = #2/#1 & @@ ImageDimensions[pic];
boxrat = #2/#1 & @@ MapThread[Abs[#2 - #1] &, {ll, ur}];
{Texture[ImageData[pic]],
Polygon[Tuples[Sort /@ Transpose[{ll, ur}]][[{1, 2, 4, 3}]],
VertexTextureCoordinates ->
Tuples[{
{f Max[0, 1 - picrat/boxrat], 1 - (1-f) Max[0, 1- picrat/boxrat]},
{f Max[0, 1 - boxrat/picrat], 1 - (1-f) Max[0, 1- boxrat/picrat]}}]
[[{1, 2, 4, 3}]]]}]
I've added an extra argument f which indicates which indicates how much of the left or right of the image should be cropped. For example a setting of 0 would indicate that all cropping should be from the right side of the image (or the top depending on the aspect ration of the image). When f==0.5 equal parts are cropped from the left and right sides and when f==1 the image is only cropped on the left side (or bottom).
Edit 2
It looks like Texture isn't playing nicely with Inset used in kguler's answer to your previous. To get the text and the image in the same picture you could do something like this instead
rec[ll_, ur_, pic_] := Module[{crop, boxrat},
boxrat = #2/#1 & @@ MapThread[Abs[#2 - #1] &, {ll, ur}];
crop = ImageCrop[pic, Transpose[{ ImageDimensions[pic]}],
AspectRatio -> boxrat];
Inset[crop, Min /@ Transpose[{ll, ur}], {Left, Bottom},
Abs[ur - ll]]]
Combined with kguler's answer you get something like
Graphics[{EdgeForm[{Thickness[0.005`], Black}],
FaceForm[White], Rectangle[{0, 0}, {160, 90}],
FaceForm[Darker[Gray]], Rectangle[{0, 0}, {80, 63}],
(* code for picture *)
{rec[{80, 0}, {160, 63}, pic],
FaceForm[Opacity[0]],
Rectangle[{80, 0}, {160, 63}]},
(* code for text *)
Inset[Pane[
Style[txt1, 12, TextAlignment -> Left], {Scaled[1],
Scaled[0.75`]}, Alignment -> Center,
ImageSizeAction -> "Scrollable"], {0, 8}, {Left, Bottom}, {78,
67}],
Flatten[
Transpose[{Flatten[(Table[
RandomChoice[{GrayLevel[0.15`], c0[[#1]]}], {3}] &) /@
Range[2, 4, 1]],
MapThread[
Function[{Xs, Ys},
Rectangle[{Xs, Ys}, {Xs + 16, Ys + 9}]], {Flatten[
Table[Range[0, 32, 16], {3}]],
Flatten[(Table[#1, {3}] &) /@ Range[63, 81, 9]]}]}]],
{Black, Thickness[0.005`], Line[{{0, 63}, {159, 63}}]}},
PlotRange -> {{0, 160}, {0, 90}}, Method -> {"ShrinkWrap" -> True},
ImagePadding -> 2, ImageMargins -> 0, ImageSize -> 500]
which produces something like

rec? I got the behaviour you described with the previous one usingTexturebut not with the newest one usingInset. Maybe you need to runClear[rec]first to clear the old definition. As for exporting, to what format are you exporting? – Heike Feb 03 '12 at 16:03