有没有办法在Google表格中点击鼠标来放大图像?

时间:2015-09-22 08:01:50

标签: google-apps-script google-sheets google-spreadsheet-api

我基本上在桌子上有小图像,我想在鼠标点击时放大。我希望放大的图像显示在页面的中央。再次单击鼠标以删除放大的图像。我能够使用我找到的VB脚本在Excel上执行此操作,但在Google表格中没有运气。有没有办法将这种脚本分配给每个图像?

与此http://imgur.com/ETyflIS

类似

亲切的问候,

亚历

3 个答案:

答案 0 :(得分:3)

您可以安装Google chrome插件: Docs Image Zoomer

在这里测试:Example

enter image description here

答案 1 :(得分:2)

您可以为图像分配脚本,但我无法(我可以看到)脚本找出正在点击的图像。此外,脚本可以插入一个新图像,但是这个图像不会分配给它,所以我们不能让它在点击时消失。

我想您可以使用HTML服务分配一个打开图像的脚本,如下所示:

Enlarge Picture on Click

但是您需要为每个图像创建一个单独的函数,因此它可以将源加载到HTML中,或者识别以某种方式单击的图像(我会思考,但我不会这样做)认为这可以做到。)

编辑: 以下脚本。第一个图像应该运行popUp1,第二个图像应该运行popUp2。可能有一个更优雅的解决方案,用于为HTML提供不同的图像URL,但这可行。

<强> code.gs

function onOpen() {
  var ui = SpreadsheetApp.getUi();
  // Or DocumentApp or FormApp.
  ui.createMenu('Actions')
  .addItem('Authorise', 'Auth')
  .addToUi();
}

function Auth() {
  SpreadsheetApp.getActiveSpreadsheet();
}


function popUp1() {
  var html = HtmlService.createHtmlOutputFromFile('index1')
      .setSandboxMode(HtmlService.SandboxMode.IFRAME);
  html.setHeight(400);
  html.setWidth(600);
  SpreadsheetApp.getUi()
      .showModalDialog(html, 'Image');
}

function popUp2() {
  var html = HtmlService.createHtmlOutputFromFile('index2')
      .setSandboxMode(HtmlService.SandboxMode.IFRAME);
  html.setHeight(400);
  html.setWidth(600);
  SpreadsheetApp.getUi()
      .showModalDialog(html, 'Image');
}

<强> index1.html

<form>
  <div id="closeDiv"><font face="arial" size="1">Click the image to close...</font></div>
  <img src="http://www.hdwallpapersimages.com/wp-content/uploads/2014/01/Winter-Tiger-Wild-Cat-Images-540x303.jpg" alt="DJ BBQ" style="width:540px;height:303px;" onClick="closeImage()">
</form>

<script type="text/javascript">
  function closeImage() {
    google.script.host.close();
  }
</script>

<强> index2.html

<form>
  <div id="closeDiv"><font face="arial" size="1">Click the image to close...</font></div>
  <img src="http://www.keenthemes.com/preview/metronic/theme/assets/global/plugins/jcrop/demos/demo_files/image1.jpg" alt="DJ BBQ" style="width:540px;height:303px;" onClick="closeImage()">
</form>

<script type="text/javascript">
  function closeImage() {
    google.script.host.close();
  }
</script>

答案 2 :(得分:1)

不确定这是否是您要查找的内容,也不确定您是否找到了其他解决方案,但是如果您去插入/绘图,您可以将全尺寸图像粘贴到那里,插入它,然后在单元格内调整它的大小。 如果双击图像,则会弹出完整尺寸的绘图。 但是,这只适用于编辑器。不是观众也不是评论者。 此外,您必须单击保存并关闭才能返回。 ESC 或单击外部都不会关闭绘图编辑器。

示例:https://docs.google.com/spreadsheets/d/1KDcRQngFy1zRUrD6v2FYH-YPBivZGiUlSKt_PhjeZqU/edit#gid=0

希望对您有所帮助。

恩里克