【问题标题】:v-card-media with base64 image带有 base64 图像的 v-card-media
【发布时间】:2018-05-04 11:51:46
【问题描述】:

我正在 ColdFusion 中创建一个验证码图像,并使用 Taffy 将其作为 REST 提要返回。然后在 Vuetify 中显示

ColdFusion / 太妃糖代码

<cfscript>
  component extends="taffy.core.resource" taffy_uri="/captcha" {

  function get() hint="Sends one out" {

  var captcha   = CreateUUID().right(4) & DayOfWeekAsString(DayOfWeek(now())).left(1).lcase() & "!";

  // This is ColdFusion
  var tempFile = "ram:///#captcha#.txt";

  var myImage = ImageCreateCaptcha(100, 300, captcha, "low");

  ImageWriteBase64(myImage, tempFile, "png", true, true);

  var myfile = FileRead(tempFile);
  FileDelete(tempFile);


  return rep({'status' : 'success', 'time' : GetHttpTimeString(now()),
    'captcha_hash' : hash(captcha), 'captcha_image' : myFile
    });
}
...
</cfscript>

它返回如下内容:

{"status":"success","captcha_image":"data:image/png;base64,iVBORw0KG /d67W8EALALKJQAABBYAAAILABAYAEAILAAdr...

Vue

我可以通过显示图像

<img :src="captcha_image" height="100px;">

Vuetify

如果我不使用高度,图像根本不会出来

如果我使用这样的高度,就会出现错误的纵横比。

<v-card-media :src="captcha_image" height="100px"></v-card-media>

有解决办法吗?还是 &lt;v-card-media 是错误的工具?

【问题讨论】:

    标签: coldfusion vuejs2 captcha vuetify.js taffy


    【解决方案1】:

    原因是v-card-media将图片作为固定高度的div的背景图片。

    如果你想保持纵横比。您可以使用 &lt;img /&gt; 标签和 width="100%" 来代替。

    <img src="data:image/jpeg;base64,/9j/4AAQ..." width="100%">
    

    演示:https://codepen.io/jacobgoh101/pen/bMrBWx?&editors=101

    <div id="app">
      <v-app id="inspire">
        <v-layout>
          <v-flex xs12 sm6 offset-sm3>
            <v-card>
              <img src="data:image/jpeg;base64,/9j/4AAQ..." width="100%">
              <v-card-title primary-title>
                  ...
              </v-card-title>
              <v-card-actions>
                  ...
              </v-card-actions>
            </v-card>
          </v-flex>
        </v-layout>
      </v-app>
    </div>
    

    【讨论】:

    • 在赋予width="100%"属性后,基于base64的图像成功渲染
    猜你喜欢
    • 2019-11-11
    • 2019-06-11
    • 1970-01-01
    • 2020-07-04
    • 1970-01-01
    • 1970-01-01
    • 2022-10-13
    • 1970-01-01
    • 2021-06-11
    相关资源
    最近更新 更多